Как проверять таблицы на ошибки
Для проверки таблицы 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
дополнительно отображать некоторую статистическую информацию.
Содержание раздела