восстановление резервной копии mysql .myd .frm - PullRequest
0 голосов
/ 15 октября 2010

Мне нужно восстановить базу данных mysql из файлов .myd и .frm. И я не знаю, с чего начать, я пытался просто скопировать их, сохраняя разрешения для файлов, но безрезультатно, какие еще шаги мне нужно предпринять?

У меня такое ощущение, что он как-то связан с файлами ib_logfile0, ib_logfile1 и ib_data Но не знаю, что делать.

1 Ответ

2 голосов
/ 15 октября 2010

Вы не должны делать резервные копии, работая с необработанными файлами MySQL. Таким образом, легко получить поврежденную базу данных. Подумайте, что произойдет, когда вы начнете копировать файлы на свой резервный носитель - копирование займет ненулевое количество времени, в течение которого база данных может потенциально записывать новые данные в различных местах, включая части, которые вы уже скопировали. Теперь вы копируете измененный файл, смесь старых данных и новых данных. Эта измененная копия почти наверняка будет повреждена.

Вместо этого вы должны использовать mysqldump или mysqlhotcopy, которые гарантируют стабильное резервное копирование.

Однако, если ваша база данных работает относительно тихо и вам удалось получить хорошую чистую резервную копию, файлы, которые необходимо восстановить, зависят от типа восстанавливаемых таблиц. InnoDB хранит все свои данные в файлах ib*, независимо от имени базы данных / таблицы. MyISAM использует файлы в каталогах, названных в соответствии с именами базы данных / таблицы.

После копирования резервных копий в правильные места вам придется перезапустить MySQL, так как он по-прежнему будет обращаться к исходным копиям файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...