Битая база данных - это не всегда полная потеря данных. Иногда повреждена отдельная таблица, индекс, дамп или структура после неудачного импорта.
Главное - не усугубить проблему повторными импортами и случайными repair-командами без копии.
Почему это мешает работе
Поврежденная база может ломать сайт частично: не открывается каталог, пропадают заказы, не работает админка или падает только один модуль.
Частые причины
- сбой сервера во время записи
- неудачный импорт дампа
- переполненный диск
- повреждение таблиц или индексов
- ошибка кодировки после переноса
- несовместимая версия MySQL/MariaDB
План диагностики и исправления
- Сохраняю текущую копию базы или файлов данных, если это возможно.
- Смотрю точные ошибки MySQL/MariaDB и приложения.
- Определяю поврежденные таблицы или участок данных.
- Проверяю бэкапы и возможность безопасного восстановления.
- Восстанавливаю таблицы, индексы или данные с проверкой сайта.
Чего лучше не делать
- многократно запускать repair без копии
- импортировать разные дампы поверх друг друга
- удалять поврежденные таблицы без анализа
- игнорировать переполненный диск
- чинить production без резервной копии
Что вы получаете
- понятно, что именно повреждено
- восстановлены таблицы или данные, если это возможно
- проверены бэкапы
- сайт снова подключается к базе
- даны рекомендации по резервному копированию
Что нужно для старта
- ссылка на сайт, страницу, проект или репозиторий
- описание симптома простыми словами
- скриншот, лог, отчет PageSpeed или текст ошибки, если есть
- информация о CMS, сервере, базе или сервисе, если известна
- приоритет: срочно восстановить или спокойно оптимизировать
Сроки
| Одна таблица | 1-3 часа |
|---|---|
| Проблема дампа | 2-5 часов |
| Серьезное повреждение | после диагностики |
Вопрос-ответ
Данные всегда можно восстановить?
Нет. Но часто можно восстановить часть или откатиться на рабочий бэкап.
Почему важно место на диске?
Переполненный диск может снова повредить записи и помешать восстановлению.
Нужно ли останавливать сайт?
При активной записи в базу часто лучше временно остановить сайт или ограничить операции.
Итог
Починить битую базу данных можно только после аккуратной диагностики. Сначала копия и анализ, потом восстановление.
Нужна похожая задача? Напишите в Telegram: @rabotator_support. Пришлите симптом, ссылку и доступы только к нужной части проекта, я посмотрю и предложу понятный план.