I’m designing my backup solution for Percona MySQL. Currently I have a (working) setup which does a full backup with xtrabackup to a remote location. These backups are then stored 4 weeks and rotated.
Now comes the part I have some trouble with; During the week I would like to stream binlogs to a remote location in order to be able to roll forward the full backups and get point in time recovery (PITR) capability. I say streaming because I want to minimize the gap between binlogs being send to a remote location and a possible disaster. I’m having a hard time finding a tool which manages receiving binlogs and stores them for backup purposes (and also does rotation and such). Am I trying to do something here that doesn’t make sense?
This setup is basically the same as what pgbarman does for PostgreSQL; Take full backups and then supplement those by pretending to be part of PostgreSQL replication topology and receive WAL’s.