Для проверки таблицы MyISAM
используются следующие команды:
-
myisamchk tbl_name
Находит 99,99% всех ошибок. Не в состоянии отыскать повреждений, затрагивающих только файл данных (которые весьма необычны). Если необходимо только проверить таблицу, то обычно следует выполнить myisamchk без опций либо с одной из опций -s или --silent.
-
myisamchk -m tbl_name
Находит 99,999% всех ошибок. Сначала на ошибки проверяются все индексные элементы, а затем читаются все строки подряд. Программа вычисляет контрольную сумму для всех ключей в строке и проверяет, совпадает ли она с контрольной суммой в индексном дереве.
-
myisamchk -e tbl_name
В этом случае выполняется полная и тщательная проверка всех данных (
-e
означает ``расширенная проверка''). Происходит тестовое чтение каждого ключа для каждой строки с целью контроля того, что ключи указывают на нужные строки. Для большой таблицы с множеством ключей на это может потребоваться много времени.myisamchk
обычно останавливается после обнаружения первой ошибки, но если желательно получить более подробную информацию, можно добавить опцию--verbose
(-v
) - таким образом выполнениеmyisamchk
будет продолжаться вплоть до максимума в 20 ошибок. При нормальной работе достаточно просто запуститьmyisamchk
(без аргументов за исключением имени таблицы). -
myisamchk -e -i tbl_name
Аналогична предыдущей команде, но опция
-i
указываетmyisamchk
дополнительно отображать некоторую статистическую информацию.