Наш сервер только что вышел из строя после 140-дневной перезагрузки безотказной работы (не загружается). На нем был запущен Plesk, и поскольку он размещен на Online.net, я могу запустить систему восстановления и получить доступ к своим данным. На нем был запущен сервер MySQL с несколькими базами данных и таблицами. Мне нужно получить доступ к базам данных и экспортировать их, чтобы я мог переустановить сервер. Сервер работал под управлением CentOS, а система восстановления — Ubuntu 12.04. Есть ли способ получить базы данных или запустить исходный сервер MySQL?
Спасибо!
решение1
В системе CentOS 6 по умолчанию mysql хранит свои файлы в дереве с корнем `/var/lib/mysql
Скопируйте файлы из поврежденной системы /var/lib/mysql/...
и /etc/my.cnf
файл в безопасное место.
- Соберите систему CentOS и установите mysql.
- Завершите работу (если запущена) службы MySQL на новой системе.
- Скопируйте сохраненный
my.cnf
файл/etc
на новую систему. - Удалите содержимое нового
/var/lib/mysql
дерева систем. - Скопируйте содержимое сохраненного дерева MySQL в
/var/lib/mysql
новую систему. - Запустите службу MySQL (все отмечено).
Если вам повезет, то система будет работать и вы сможете проверить ее на предмет потери данных и т.п.
Если это не удастся, вам придется просмотреть журналы и предпринять соответствующие действия на основе того, что вы обнаружите.
Примечание:Здесь важно работать с копиями данных, которые вы восстановили из поврежденной системы.
Теперь подумайте о регулярном создании резервных копий ваших данных.
решение2
Прежде всего вам необходимо убедиться, что раздел (тот, где находился каталог данных MySQL) смонтирован где-либо (например, /mnt/old_root) в системе восстановления.
Затем выполните chroot в эту директорию:
chroot /mnt/old_root
Затем попробуйте запустить mysql:
/etc/init.d/mysql start
И наконец, сделайте дамп нужных вам баз данных:
mysqldump -u admin -p`cat /etc/psa/.psa.shadow` database_name > database_name.sql