При добавлении элементов таблиц через PHPMYADMIN (полей или столбцов) может появляться ошибка #1034 — Incorrect key file for table 'table_name'; try to repair it .
Часто может также наблюдаться повышенная нагрузка создаваемая на CPU или диск сервером баз данных.
Причины ошибки #1034 — Incorrect key file for table
Причиной часто может быть нехватка места в разделе mysqltmp в котором сохраняются временные данные MySQL.
Выяснить объем диска, выделенные под временные файлы MySQL можно выполнив в консоли команду df -h
df -h
Filesystem Size Used Avail Use% Mounted on
udev 10M 0 10M 0% /dev
tmpfs 818M 1.2M 817M 1% /run
/dev/vda 148G 124G 18G 88% /
/dev/vdb 175M 175M 0 100% /lib/modules
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 1.6G 0 1.6G 0% /run/shm
mysqltmp 128M 0 128M 0% /var/tmp-mysql
В примере под mysqltmp выделено 128 Мб, чего может быть недостаточно. Перемонтируем раздел добавив пространства
mount -o remount,size=1G /var/tmp-mysql/
df -h
Filesystem Size Used Avail Use% Mounted on
udev 10M 0 10M 0% /dev
tmpfs 818M 1.2M 817M 1% /run
/dev/vda 148G 124G 18G 88% /
/dev/vdb 175M 175M 0 100% /lib/modules
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 1.6G 0 1.6G 0% /run/shm
mysqltmp 1.0G 48K 1.0G 1% /var/tmp-mysql
Сейчас доступен 1 Гб.
Если ошибки #1034 — Incorrect key file for table 'table_name'; try to repair it продолжают появляться нужно редактировать значения двух указанных ниже переменных в конфигурационном файле /etc/mysql/my.cnf или в одном из файлов, который подключается в /etc/mysql/my.cnf .
Директивы добавляются в секцию [mysqld]
tmp_table_size
max_heap_table_size
Значения увеличиваются до тех пор пока ошибки появляться не перестанут.
После того как конфигурационный файл отредактирован сервер баз данных нужно перезапустить
systemctl restart mysql
Читайте также про оптимизацию настроек MySQL