Реклама

Восстановление базы данных MySQL Обновлено 11.09.2016

Иногда случается.... что Linux переживает по сроку службы жесткие диски.. Так и случилось однажды, диск начал сыпаться, но файлы были еще доступны, даже ОС загружалась, однако надо было спасать все это дело! Пока информацию можно вынуть - нужно вынуть. Интересно было восстановливать БД MySQL после ее физического копирования.

Таблицы формата InnoDB. Дело в том, что мало их просто скопировать из папки /var/lib/mysql/baza/ на рабочий новый сервер - так как данные хранятся вовсе не там, там лишь описание таблиц. Данные хранятся в /var/lib/mysql/ibdata1, но что делать, что сервер уже работает? и там крутятся другие сайты? выбираем подходящее время, создаем "мертвую" бд - чисто название, останавливаем сервер MySQL, делаем бэкап файла /var/lib/mysql/ibdata1 - чтобы не утратить актуальные данные. Копируем со старого жесткого диска файлы в папку базы - frm-файлы, затем подменяем файл ibdata1 - запускаем сервер - заходим в систему управления БД - adminer, phpmyadmin и делаем дамп этой базы! Затем все возращаем взад - снова стопорим MySQL, возвращаем исходный файл ibdata1, запускаем, заходим в СУБД, удаляем полностью базу, создаем ее заново - и делаем импорт SQL-файла. Должно все получится. Если бы был актуальный дамп - можно было бы сделать все быстрее, но не получилось, пришлось так извратится.

RSS
RSS - Лента новостей
Закладки
Сообщества