innobackupex compressed backup workflow

I am new to Xtrabackup, so sorry for my newbie question.

I wish to replace all my actual backup scripts which are using mysqldump and gzip with innobackupex and xtrabackup, and I am making some tests to better understand how it works.

If I understand well, the procedure to have a fully restorable backup using xtrabackup is:

1) (on the source server) make the full or partial backup with innobackupex:

3) (on the source server) writing the table structure in case we need a partial restore on the destination server:

4) move the /path/to/backup/dir directory to the destination server

5) (on the destination server) restore the full backup or the partial backup manually recreating the tables structure from the .ddl.sql file created during the step 3

This seems to work but what if I want to create a compressed backup with the ?

I understand that the compressed backup cannot be prepared for restoration, so how I can store a compressed not prepared backup which cannot be restored?

Am I missing something, or the preparation can be made on the destination server even without having access to the source server (for example if the source server is dead or data are not available and we have to restore to a new server)?

Or do I need to create an uncompressed backup, prepare it, compress it with GZIP and then store the backup for a future use?

So I think the main question is: can I store an unprepared backup and prepare it after I uncompressed it on the destination server even months after its creation?

Thank you very much!

Hi decibel83;

I’d recommend checking out the below page from the Xtrabackup documentation:

That gives you a quick rundown on how to take a compressed backup, how to prepare it, and how to restore it.