Восстановление Backup MySQL .myd .frm
-
30-09-2019 - |
Вопрос
Мне нужно восстановить базу данных MySQL из файлов .my и .frm. И я понятия не имею, с чего начать, я попытался просто скопировать их, пока сохраняя файловые разрешения, но безрезультатно, какие другие шаги мне нужно взять?
У меня есть ощущение, что он имеет что-то связано с файлами ib_logfile0, ib_logfile1 и ib_data. Но не знаю, что делать.
Решение
Вы не должны делать резервные копии, работая с файлами RAW MySQL. Это тривиально легко в конечном итоге с поврежденной базой данных. Подумайте о том, что произойдет, когда вы начните копировать файлы в среду резервной копии - копия примет ненулевое количество времени, в течение которой база данных может потенциально писать новые данные в разных местах, включая детали, которые вы уже скопировали. Теперь вы копируете модифицированный файл, сочетание старых данных и новых данных. Эта модифицированная копия почти гарантирована повреждена.
Вместо этого вы должны использовать MySQLLUM или MySQLHOTCOPY, что гарантирует постоянную резервную копию.
Однако в случае вероятности того, что ваша база данных относительно тихана, и вам удалось получить хорошую чистую резервную копию, файлы, необходимые для восстановления, зависят от типа таблиц, которые вы восстанавливаете. InnoDB хранит все свои данные в ib*
Файлы, независимо от имени базы данных / таблицы. MyISAM использует файлы в каталогах с именем в соответствии с именами базы данных / таблицы.
После копирования резервных копий в правильные места вам придется перезапустить MySQL, так как он все еще будет доступен к исходным копиям файлов.