2012/01/12

Восстановление MySQL MyISAM

Если у вас в логах внезапно начали появляться ошибки типа "Table './mybd/cw_table' is marked as crashed and last (automatic?) repair failed", то значит наш дорогой MyISAM дал сбой. А так как автовосстановления в нем не предусмотрели, то придется вручную нам это сделать. Во-первых, остановим сервер mysql:
# /etc/rc.d/mysql-server stop
Воспользуемся утилитой myisamchk для восстановления таблицы с ключом -r, что означает recovery:
# myisamchk -r cw_table
Это помогает в большинстве случаев. При запущенных случаях, если посыпались много таблиц, то можно проверить всю базу целиком:
# myisamchk --silent --force --fast --update-state /var/lib/mysql/mybd/*.MYI
Если сбои произошли в результате смерти жесткого диска и файлы восстановлялись с помощью черной магии, то вместо опции --fast лучше задать --medium-check или же --extended-check, если времени вагон / небольшие таблицы / мало индексов.

No comments:

Post a Comment