Каталог статей
Ошибка таблицы MySQL помечена как сбой, и последнее (автоматическое?) - решение.
Эта статья познакомит вас с нашими советами при ремонте стола.Error: Table \'./db_name/table_name\' is marked as crashed and last (automatic?) repair failedрешение.
В таблице MySQL обнаружена проблема , о чем свидетельствует следующее сообщение: ▼
Error: Table './db_name/table_name' is marked as crashed and last (automatic?) repair failed
mysql_upgrade выполняет следующие команды для проверки и исправления таблиц и обновления системных таблиц ▼
mysqlcheck --all-databases --check-upgrade --auto-repair
- Сбой операции необратим, и база данных должна быть остановлена:
service monit stop
service mysqld stop
- Введите каталог, в котором находится база данных:
cd /var/lib/mysql/db_name/
Примечание. Службу mysql необходимо остановить перед восстановлением операции.
- Ремонт одного листа данных:
myisamchk -r tablename.MYI
- Исправить все таблицы:
myisamchk -r *.MYI
- Безопасный режим:
myisamchk -r -v -o <table_name>
- Принудительный режим:
myisamchk -r -v -f <table_name>
использование myisamchk
Примечание. Перед использованием myisamchk убедитесь, что mysqld не обращается к проверяемой таблице.Лучше остановите mysqld.
- выполненный
myisamchk –update-state -s *.myi
, и проверьте, какие индексные файлы имеют проблемы (это может занять много времени).
- Опция update-state используется только при остановке mysqld.
- Для каждой поврежденной таблицы попробуйте
myisamchk -r -q table_name
Это режим быстрого восстановления, который автоматически проверяет, могут ли индексная таблица и таблица данных быть непротиворечивыми.Если это последовательно, это может быть исправлено.
- Если режим быстрого исправления не работает, рассмотрите следующее:
myisamchk -r table_name
Несогласованные данные и индексы удаляются, а индексы перестраиваются.
- Если это не удается, подумайте:
myisamchk –safe-recover table_name
Пример операции
Сбой операции необратим, и база данных должна быть остановлена:
service monit stop
service mysqld stop
cd /var/lib/mysql/eloha_ufo
cd /var/lib/mysql/eloha_cwl
Исправить все таблицы:
myisamchk -r *.MYI
myisamchk -r -v -f wp_postmeta.MYI
myisamchk -r -v -f wp_posts.MYI
myisamchk -r -v -f wp_options.MYI
myisamchk -r -v -f wp_itsec_log
Это намного медленнее, чем -r, но обрабатывает ситуации, с которыми -r не может.
myisamchk -r -f -o /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
Вот команда для полного пути к таблице базы данных:
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_posts.MYI
Запустите базу данных MYSQLD:
service mysqld start
service mysqld restart
Запустите программу мониторинга MONIT :
service monit restart
service monit start
Надеюсь, статья «Решение проблемы с ошибкой таблицы MySQL 'помечена как поврежденная и последнее (автоматическое?) восстановление'», опубликованная в блоге Чэнь Вэйляна ( https://www.chenweiliang.com/ ), окажется вам полезной.
Не стесняйтесь делиться ссылкой на эту статью: https://www.chenweiliang.com/cwl-176.html
