XAMPP / MySQL: не удалось открыть файл таблицы таблиц с одной таблицей. \ Mysql \ innodb_index_stats.ibd после перезагрузки MySQL

Я установил Drupal на свой локальный сервер XAMPP. Он работал отлично, никаких проблем с включением и работой с базой данных / сайтом до тех пор, пока я не перезапустил XAMPP. С тех пор я получаю следующее в моем файле журнала:

2013-09-02 16:18:46 2544 [Примечание] Плагин 'FEDERATED' отключен.

2013-09-02 16:18:46 3e8 InnoDB: Предупреждение: использование innodb_additional_mem_pool_size DEPRECATED. Эта опция может быть удалена в будущих выпусках вместе с опцией innodb_use_sys_malloc и с внутренним распределителем памяти InnoDB.

2013-09-02 16:18:46 2544 [Примечание] InnoDB: куча памяти InnoDB отключена

2013-09-02 16:18:46 2544 [Примечание] InnoDB: Мьютексы и rw_locks используют функции блокировки Windows

2013-09-02 16:18:46 2544 [Примечание] InnoDB: сжатые таблицы используют zlib 1.2.3

2013-09-02 16:18:46 2544 [Note] InnoDB: Не использовать инструкции CPU crc32

2013-09-02 16:18:46 2544 [Примечание] InnoDB: инициализация пула буферов, размер = 16.0M

2013-09-02 16:18:46 2544 [Примечание] InnoDB: завершена инициализация пула буферов

2013-09-02 16:18:46 2544 [Примечание] InnoDB: Максимально поддерживаемый формат файла – Barracuda.

2013-09-02 16:18:47 2544 [Примечание] InnoDB: порядковые номера журнала 1600614 и 1600614 в файлах ibdata не соответствуют порядковому номеру журнала 1600644 в ib_logfiles!

2013-09-02 16:18:47 2544 [Примечание] InnoDB: база данных не была отключена нормально!

2013-09-02 16:18:47 2544 [Примечание] InnoDB: запуск восстановления после сбоя.

2013-09-02 16:18:47 2544 [Примечание] InnoDB: чтение информации табличного пространства из файлов .ibd …

2013-09-02 16:18:47 2544 [ERROR] InnoDB: Попытка открыть ранее открытое табличное пространство. Предыдущее табличное пространство drupal / variable использует пробел ID: 2 в пути к файлу:. \ Drupal \ variable.ibd. Не удается открыть табличное пространство mysql / innodb_index_stats, которое использует пробел ID: 2 в пути к файлу:. \ Mysql \ innodb_index_stats.ibd

InnoDB: Ошибка: не удалось открыть файл табличного пространства в одной таблице. \ Mysql \ innodb_index_stats.ibd

InnoDB: Мы не продолжаем восстановление после сбоя, потому что таблица может стать

InnoDB: поврежден, если мы не можем применить записи журнала в журнале InnoDB к нему.

InnoDB: Чтобы устранить проблему и запустить mysqld:

InnoDB: 1) Если в файле есть проблема с разрешением, и mysqld не может

InnoDB: откройте файл, вы должны изменить разрешения.

InnoDB: 2) Если таблица не нужна или вы можете восстановить ее из резервной копии,

InnoDB: тогда вы можете удалить .ibd-файл, а InnoDB будет делать обычный

InnoDB: восстановление после сбоя и игнорирование этой таблицы.

InnoDB: 3) Если файловая система или диск повреждены, и вы не можете удалить

InnoDB: .ibd-файл, вы можете установить innodb_force_recovery> 0 в my.cnf

InnoDB: и сила InnoDB для продолжения аварийного восстановления здесь.

Я искал решение через google, но, похоже, это проблема только с базой данных drupal, поскольку он может подключаться к MySQL, если я удалю базу данных.

Надеюсь, кто-то может мне помочь :(.

dev_khan, попробуйте перезапустить MySQL в режиме только для чтения с innodb_force_recovery параметром innodb_force_recovery :

  1. Изменить my.cnf – найти строку: # innodb_force_recovery = 2
  2. Прокомментируйте строку в (удалите # )
  3. Перезагрузите MySQL, чтобы двигатель MySQL мог самостоятельно ремонтировать.
  4. Прокомментируйте строку innodb_force_recovery снова (добавьте # )
  5. Перезапустите MySQL снова, и у вас есть полный доступ снова без ограничения только для чтения.

Привет из Германии

Переместите (НЕ УДАЛЯЙТЕ) эти файлы в другую папку:

 innodb_index_stats.frm innodb_table_stats.frm slave_master_info.frm slave_relay_log_info.frm slave_worker_info.frm 

и .ibd с тем же именем файла:

 innodb_index_stats.ibd innodb_table_stats.ibd slave_master_info.ibd slave_relay_log_info.ibd slave_worker_info.ibd 

Попробуйте запустить MySQL.

Вы можете решить эту проблему, добавив строку в свой конфигурационный файл mysql: my.cnf или my.ini (зависит от вашего дистрибутива)

просто под [mysqld] добавьте эту строку: innodb_force_recovery = 1

 .. [mysqld] innodb_force_recovery = 1 .. 

Затем перезапустите свой сервер MySql. Вы могли бы потерять некоторые данные, но вы снова получите сервер с вашими данными.

С Уважением,

Это происходит и с WordPress. Кажется, что это происходит только с последней версией, так как я вернулся к предыдущим версиям AMPPS, и он отлично работает, не поднимая эту проблему с innodb.