MySQL: Как сделать резервную копию и восстановить, используя другое имя схемы, используя xtrabackup
Мне очень часто нужно создать резервную копию базы данных и импортировать ее, используя другое имя схемы. Эти схемы довольно большие (3-5 ГБ), а mysqldump - это боль. xtrabackup выглядит многообещающе, но я не могу найти, как импортировать резервную копию, используя другое имя базы данных.
Есть какие-нибудь подсказки?
1 ответ
xtrabackup сильно отличается от mysqldump. Он не генерирует дамп данных схемы, который "восстанавливается" - он фактически открывает ваши таблицы с запущенной копией InnoDB и генерирует данные табличного пространства, которые непосредственно могут использоваться MySQL. В большинстве случаев он ведет себя как холодное резервное копирование вашего каталога данных. После применения инкрементных данных, с xtrabackup не существует никакой реальной процедуры восстановления, кроме простого копирования резервной копии на место и запуска MySQL.
Что может сработать, это экспортировать и импортировать отдельные таблицы, как описано в http://www.percona.com/doc/percona-xtrabackup/xtrabackup_bin/exporting_importing_tables.html. Я не проверял, что это будет работать между схемами с разными именами, но я не могу придумать причину, почему это не будет.