Spec-Zone.ru › MySQL 9.2

17.20 Устранение неполадок InnoDB

  • 17.20.1 Устранение неполадок операций ввода-вывода InnoDB
  • 17.20.2 Устранение неполадок восстановления
  • 17.20.3 Принудительное восстановление InnoDB
  • 17.20.4 Устранение неполадок операций с словарем данных InnoDB
  • 17.20.5 Обработка ошибок InnoDB

Следующие общие рекомендации применяются к устранению неполадок с InnoDB:

  • При возникновении ошибки или подозрении на ошибку, проверьте журнал ошибок сервера MySQL (см. Раздел 7.4.2, «Журнал ошибок»). Он содержит информацию для устранения некоторых распространенных ошибок, связанных с InnoDB, которые могут возникнуть.

  • Если ошибка связана с блокировкой, запустите сервер с включенным параметром innodb_print_all_deadlocks, чтобы подробности каждой тупиковой ситуации записывались в журнал ошибок сервера MySQL. Сведения о тупиковых ситуациях см. в Разделе 17.7.5, «Тупиковые ситуации в InnoDB».

  • Если проблема связана со словарем данных InnoDB, см. Раздел 17.20.4, «Устранение неполадок операций со словарем данных InnoDB».

  • При устранении неполадок обычно лучше запустить сервер MySQL из командной строки, а не через mysqld_safe или как службу Windows. Таким образом, можно увидеть, что mysqld выводит на консоль, и получить лучшее представление о ситуации. В Windows запустите mysqld с параметром --console, чтобы направить вывод в окно консоли.

  • Включите InnoDB мониторы, чтобы получить информацию о проблеме (см. Раздел 17.17, «Мониторы InnoDB»). Если проблема связана с производительностью или сервер завис, включите стандартный монитор, чтобы получить информацию о внутреннем состоянии InnoDB. Если проблема связана с блокировками, включите монитор блокировок. Если проблема связана с созданием таблиц, табличными пространствами или операциями со словарем данных, обратитесь к таблицам схемы InnoDB INFORMATION_SCHEMA, чтобы изучить содержимое внутреннего словаря данных InnoDB.

    InnoDB временно включает вывод стандартного InnoDB монитора в следующих случаях:

    • Длительное ожидание семафора

    • InnoDB не может найти свободные блоки в кэше буферов

    • Более 67% кэша буферов занято кучами блокировок или адаптивным индексом хеширования

  • Если вы подозреваете, что таблица повреждена, выполните CHECK TABLE для этой таблицы.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/innodb-troubleshooting.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API