Чиним битые таблицы MySQL

Abdula аватар

MySQL: чиним битые таблицы

Бывает, что после длительной работы дедика или при его сбоях "бьются" таблицы типа MyISAM
(в отличие от более медленных таблиц InnoDB, которые этим недостатком не обладают).
Косвенный признак этого - резкое замедление работы сайта и перегруженность процесса mysqld - 200-300% и более.

Для "починки" всех таблиц всех баз данных на сервере необходимо выполнить следующую команду:

mysqlrepair --auto-repair  --all-databases  --user=root  --password

 
Здесь mysqlrepair - лишь линк на исполняемый файл mysqlcheck, обычно расположенный в /usr/bin/
Вначале программа запросит рутовский пароль MySQL.
Перед починкой таблиц программа сначала анализирует их состояние и выводит на экран их состояние.
Корректные таблицы будут отмечены словом Ok

Настоятельно рекомендуется эту команду дополнить логгированием в текстовый файл, например, > log.txt
Иначе, если не хватит буфера консоли, вся история восстановления в него не поместится.

Для просмотра всех возможностей программы следует выполнить команду

 mysqlrepair --help или
 mysqlrepair -?
 

RSS-материал