Назад | Перейти на главную страницу

mysql Неверная информация в файле: (повреждена) ошибка

Недавно у меня отключилось электричество на одном из моих серверов мониторинга в офисе. В результате этого сбоя некоторые таблицы базы данных были повреждены.

Я успешно восстановил 3-4 таблицы с помощью параметра "use_frm", однако есть еще 3, которые кажутся сильно поврежденными и не отвечают на команду mysql REPAIR (с use_frm или без нее)

mysql> REPAIR TABLE poller_item;
+-------------------+--------+----------+----------------------------------------------       ------------+
| Table             | Op     | Msg_type | Msg_text                                                    |
+-------------------+--------+----------+-------------------------------------------------  ---------+
| cacti.poller_item | repair | Error    | Incorrect information in file:    './cacti/poller_item.frm' |
| cacti.poller_item | repair | error    | Corrupt                                                      |
+-------------------+--------+----------+-------------------------------------------------  ---------+

В этом случае есть ли другой способ восстановить таблицу?

Версия MySQL

mysql  Ver 14.14 Distrib 5.1.49, for debian-linux-gnu (x86_64) using readline 6.1
Incorrect information in file:    './cacti/poller_item.frm'

.frm файл хранит формат таблицы. Попробуй это:

  • Остановить MySQL
  • Сделайте резервную копию poller_item.frm, poller_item.MYD, poller_item.MYI
  • Отбросьте poller_item стол
  • Запустить MySQL
  • Воссоздать poller_item таблица с помощью CREATE TABLE заявление в cacti.sql (использует соответствующую версию, которую вы используете)
  • Остановить MySQL
  • Скопируйте poller_item.MYD, poller_item.MYI в датадир
  • Снова запустите MySQL

сначала сделайте резервную копию, а затем попробуйте MYISAMCHK (1):

myisamchk --recover tbl
myisamchk --save-recover tbl