Spec-Zone.ru › MySQL 5.7

5.8.1.7 Создание тестового случая при повреждении таблицы

Данная процедура применяется к таблицам MyISAM. Информацию о шагах, которые необходимо предпринять при обнаружении повреждения таблиц, см. в разделе 1.5, «Как сообщать об ошибках или проблемах».

Если у вас обнаружены повреждённые таблицы MyISAM или если mysqld всегда завершается ошибкой после некоторых операторов обновления, вы можете проверить воспроизводимость проблемы, выполнив следующие действия:

  1. Остановите демона MySQL с помощью mysqladmin shutdown.

  2. Создайте резервную копию таблиц, чтобы обезопасить себя от маловероятного случая, что исправление приведёт к нежелательным последствиям.

  3. Проверьте все таблицы с помощью myisamchk -s database/*.MYI. Исправьте любые повреждённые таблицы с помощью myisamchk -r database/table.MYI.

  4. Создайте вторую резервную копию таблиц.

  5. Удалите (или переместите) все старые файлы журналов из каталога данных MySQL, если нужно больше места.

  6. Запустите mysqld с включённым бинарным журналом. Если вы хотите найти оператор, который приводит к аварийному завершению mysqld, вы также должны запустить сервер с включённым общим журналом запросов. См. раздел 5.4.3, «Общий журнал запросов» и раздел 5.4.4, «Бинарный журнал».

  7. После возникновения проблемы с таблицей остановите сервер mysqld.

  8. Восстановите резервную копию.

  9. Перезапустите сервер mysqld без включённого бинарного журнала.

  10. Запустите операторы заново с помощью mysqlbinlog binary-log-file | mysql. Бинарный журнал сохраняется в каталоге базы данных MySQL с именем hostname-bin.NNNNNN.

  11. Если таблицы снова повреждаются или mysqld завершается ошибкой с помощью вышеуказанной команды, вы нашли воспроизводимую ошибку. Отправьте таблицы и бинарный журнал в нашу базу данных ошибок, используя инструкции, приведенные в разделе 1.5, «Как сообщать об ошибках или проблемах». Если вы являетесь клиентом поддержки, вы можете использовать Центр поддержки клиентов MySQL (https://www.mysql.com/support/), чтобы сообщить команде MySQL о проблеме и как можно скорее исправить её.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/reproducible-test-case.html

Spec-Zone.ru

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