Таблицы MyISAM и Битрикс

Добавлено: 26/11/2016 22:29 |  Обновлено: 19/08/2017 11:42 |  Добавил: nick |  Просмотры: 5250 Комментарии: 0
Вводная часть
Материал о том, как восстанавливать MyISAM таблицы в Битрикс. Такая необходимость часто возникает когда у вас есть долгоживущий сайт, у которого по мере работы могут повредиться некоторые таблицы, также такая неприятность может возникнуть при переезде с сервера на сервер.
Представьте, что в один прекрасный день вы делаете дамп сайта или открываете страницу сайта, и перед вами возникает примерно следующая ошибка: Данная ошибка говорит нам о том, что нужно восстановить указанную таблицу. Сделать это можно легко и удобно из административной панели Битрикса. Для этого есть два способа:
  1. восстановить таблицу или таблицы вручную, совершив запрос к БД;
  2. предоставить Битриксу возможность автоматически исправить все ошибки за вас.
Первый вариант вполне удобен, когда у вас только одна таблица с ошибкой, но если у вас много таких таблиц лучше всего пофиксить их все в автоматическом режиме, просто нажав на кнопку проверки.

Первый способ. Команда repair

В административной панели Битрикса заходим в Настройки → Инструменты → SQL запрос. Стандартный синтаксис команды repair такой:

REPAIR TABLE db_name.tbl_name [QUICK] [EXTENDED] [USE_FRM];

Понятно, что QUICK – это быстрое восстановление, а EXTENDED – медленное, но оно может помочь, когда восстановление без этого параметра не помогает. USE_FRM используется, если отсутствует файл .myi или поврежден его заголовок. В этом режиме MySQL воссоздаст таблицу, используя информацию из файла .frm.
  • файл .myi – содержит индексы таблиц;
  • файл .frm – содержит структуру таблиц.
Второй способ. Автоматическое восстановление

В административной панели Битрикса заходим в Настройки → Инструменты → Проверка БД. И жмем на кнопочку. После чего результат будет примерно следующий:

Оставьте свой комментарий

Комментариев нет