MySQL - восстановление таблиц

Редактировал(а) Руслан Савельев 2025/08/06 06:40

1. Общая информация

Перед восстановлением закройте все программы, которые могут обращаться к БД (СНК-АЗС, Бэк Офис СНК-АЗС) на всех рабочих местах!

Для восстановления таблиц все операции необходимо проводить на основном рабочем месте, на жестком диске которого инсталлирована MySQL. Если у вас несколько рабочих мест, на остальных дополнительных действий не требуется.

Процесс восстановления всех таблиц может занять значительное время!

2. Восстановление базы данных

2.1. Запустите программу «MySQL Administrator» одним из вариантов (А или Б):

А) из меню кнопки «Пуск»:

  • Нажмите на кнопку «Пуск»
  • Найдите в списке папку «MySQL» и нажмите на нее
  • Найдите иконку «MySQL Administrator» и нажмите на неё
1741075376036-661.png

Меню кнопки "Пуск" с выделенной программой

Б) откройте файл на диске:

  • Перейдите в папку «C:\Program Files (x86)\MySQL\MySQL Tools for 5.0\»
  • Запустите файл «MySQLAdministrator.exe»
1741075518989-726.png

Запускаемый файл программы

2.2. Введите параметры подключения:

  • Server Host: localhost
  • Username: root
  • Port: 3306
  • Password:
  • Нажмите OK для подключения.
1741075708775-628.png

Окно подключения к БД

Данные для подключения могут отличаться, при необходимости уточните их у администратора.

После подключения к базе данных откроется главное окно программы.

2.3. Выберите базу данных для восстановления:

  • Перейдите в раздел Catalogs (на рисунке отмечено цифрой 1)
  • Выберите базу данных для восстановления (на рисунке отмечено цифрой 2):
    • oc – это база данных СНК-АЗС
    • ocw – это база данных СНК-Офис
1741076055220-430.png

В разделе «Catalogs» выбрана база данных «oc»

В правом окне появится список таблиц выбранной базы данных. Поврежденные таблицы будут отмечены красным шрифтом, что говорит о том, что MySQL обнаружил повреждения в отмеченных таблицах в автоматическом режиме:

1741076414303-598.png

Поврежденная таблица выделена красным

2.4. Отметьте поврежденные таблицы и запустите восстановление:

  • В правом окне выберите поврежденные таблицы.
  • Нажмите кнопку Maintenance

Не всегда MySQL может идентифицировать повреждения в таблицах в автоматическом режиме.
Поэтому рекомендуем, до нажатия кнопки Maintenance выбрать для восстановления все таблицы.
Для этого в списке таблиц нажмите Ctrl+A.

1741091218792-789.png

Выбраны все таблицы для восстановления

Откроется окно обслуживания таблиц, выберите в нем режим восстановления:

  • Отметьте Repair Tables.
  • Нажмите кнопку «Next».
1741091326992-853.png

Выбран режим восстановления таблиц

  • В окне выбора метода восстановления выберите:
    • Extended
    • Use FRM
  • Нажмите кнопку «Repair Tables» для начала процесса восстановления.
1741091426204-430.png

Окно настройки режима восстановления

  • Дождитесь завершения процесса восстановления таблиц до появления окна с результатами.
  • Нажмите кнопку «Close» для закрытия окна результатов.
1741091517722-577.png

Окно с результатами восстановления

3. Проверка восстановления

  • Нажмите кнопку «Refresh» для обновления списка таблиц.

Если нет таблиц, отмеченных красным, то восстановление прошло успешно. Закройте средства восстановления.

Если после нажатия на кнопку «Refresh» таблицы остались выделены красным, то смотрите пункт ниже - «Возможные ошибки и их решение».

1741091650699-949.png

После восстановления таблица осталась поврежденной

4. Возможные ошибки и их решение

Если таблицы восстановить не удалось или восстановление не запускается, ниже приведены примеры решения таких ситуаций.

4.1. Остановка службы MySQL

Откройте окно управления службами, для этого:

  • Нажмите кнопку «Пуск» и наберите на клавиатуре «службы», появится строка ввода, в которой будет виден набранный текст (на рисунке отмечено цифрой 1).
  • Нажмите на найденный ярлык служб (на рисунке отмечено цифрой 2).
1741091809213-619.png

Поиск ярлыка "Службы" в меню кнопки "Пуск"

Остановите службу MySQL (или MySQL57), для этого:

  • В окне «Службы» найдите службу MySQL (или MySQL57) и выберите ее.
  • В левом окне нажмите на «Остановить».
  • Выполните действия по исправлению ошибки.
1741091932904-901.png

Управление работой службы

4.2. Запуск службы MySQL

После исправления ошибки запустите службу MySQL, нажав на «Запустить» в окне «Службы».


4.3. Ошибка 1 – установлены атрибуты файлов БД «Только чтение» и «Скрытый»

  • Остановите службу MySQL.
  • Откройте в проводнике папку с нужной БД (.\Mysql\MySQL Server 5.0\Data\oc).
  • Нажмите Ctrl+A, чтобы выбрать все файлы.
  • Нажмите правую кнопку мыши и выберите «Свойства».
  • В окне свойств уберите отметки с атрибутов «Только чтение» и «Скрытый»
  • Нажмите кнопку «Применить».
  • Запустите службу MySQL.
  • Запустите восстановление БД.
1741092145521-463.png

Окно свойств выбранных файлов

4.4. Ошибка 2 – не найден файл .MYD

  • Остановите службу MySQL.
  • Откройте в проводнике папку с нужной БД (.\Mysql\MySQL Server 5.0\Data\oc).
  • Проверьте расширения всех файлов, если есть файлы типа *.MYD-744_a и подобные, переименуйте их расширения в правильный вид - *.MYD
  • Если какой-то файл MYD не найден, то создайте пустой файл с нужным названием и таким расширением.
  • Запустите службу MySQL.
  • Запустите восстановление БД.

4.5. Ошибка 3 – «Could not fetch schema table status» и остановка службы MySQL во время восстановления

  • Остановите службу MySQL.
  • Откройте в проводнике папку с нужной БД (.\Mysql\MySQL Server 5.0\Data\oc).
  • Отсортируйте файлы по типу
  • Удалите все файлы индексов (*.MYI)
  • Запустите службу MySQL.
  • Запустите восстановление БД.

4.6. Ошибка 4 – не запускается MySQL Administrator

  • Откройте в проводнике папку C:\Users\<пользователь>\AppData\Roaming\MySQL.
  • Удалите все файлы настроек (*.ini и *.xml)
  • Запустите восстановление БД.