我有大约 60GB 的 MySQL 数据需要导入,并且在 Ubuntu 16.04 中新安装了 MariaDB 10.0。
我有 3 个 50GB 磁盘,每个都安装为/mnt/hdd1
、/mnt/hdd2
、/mnt/hdd3
。然后我运行以下命令将所有磁盘合并为一个;
mkdir /mnt/virtual
mhddfs /mnt/hdd1,/mnt/hdd2,/mnt/hdd3 /mnt/virtual -o allow_other
然后按照本教程,https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-16-04,我把datadir
MySQL 的指向/mnt/virtual/mysql
。
但是当我运行导入脚本时,出现了ER_RECORD_FILE_FULL
错误。使用以下命令检查磁盘,df -h
结果显示以下输出;
Filesystem Size Used Avail Use% Mounted on
none 3.9G 0 3.9G 0% /dev
tmpfs 798M 22M 777M 3% /run
/dev/vda 46G 1.3G 43G 3% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vdb 46G 46G 0 100% /mnt/hdd1
/dev/vdc 46G 52M 44G 1% /mnt/hdd2
/dev/vdd 46G 52M 44G 1% /mnt/hdd3
/mnt/hdd1;/mnt/hdd2;/mnt/hdd3 138G 46G 87G 35% /mnt/virtual
只有第一个磁盘已填满。它应该自动写入其他未使用的磁盘。我做错了什么?
答案1
您需要 RAID。Lvm 和 mhddfs 不会提供性能或冗余奖励。