I'm using percona xtrabackup to do full DB backups on mariadb 10 and now i'm testing the restore.

I want to restore just some databases (the important DBs) and ignore others (big archive DBs), simulation a total DB lost to check how much time i would take to restore the most important stuff to get business resume. Tying to recover everything would take much longer as the archives are not critical and could be recovered later.

The problem is (AFAIK) xtrabackup seems to only support full restores.

So is there any way to do a partial restore (only restore some DBs) with xtrabackup, using a full xtrabackup backup


  • xtrabackup supports partial restore, but innodb_file_per_table must be ON – akuzminsky Oct 12 '15 at 17:23
  • i have it enabled. But yet i'm unable to find how to do it. Any pointer is welcome. – higuita Oct 12 '15 at 22:10
  • After you enable innodb_file_per_table the table are still in ibadat1. To move them to their own table space you need to run ALTER TABLE .. ENGINE INNODB for each table. It'll be blocking, so use pt-online-schema-change. Then check percona's how to percona.com/doc/percona-xtrabackup/2.2/innobackupex/… – akuzminsky Oct 12 '15 at 22:23
  • I already have the since the DB creation, but anyway, the document you refer tells how t backup a partial DB. I don't want that, i want to keep a full backup and then only restore some of the DBs. I want to avoid having to prepare and then copy unneeded DBs. Something like --restore-only or a --ignore-db with regexp would be perfect. – higuita Oct 19 '15 at 2:18
  • I see. Check out --export option to restore individual tables. percona.com/doc/percona-xtrabackup/2.2/innobackupex/… – akuzminsky Oct 19 '15 at 2:22

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.