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