In this blog, we’ll look at running Percona XtraBackup on Windows via a Docker container.
The question whether Percona XtraBackup is available for Windows comes up every so often. While we are not planning to provide regular releases for Windows, I decided to share a way to run Percona XtraBackup in a Docker container (especially since Docker support for Windows has become more and more stable).
For this exercise, I created a playground Docker image: perconalab/percona-xtrabackup.
First, we need to prepare a few things to make it work:
192.168.1.122 in my case)
xtrabackup user:GRANT RELOAD,PROCESS,LOCK TABLES,REPLICATION CLIENT ON *.* TO 'xtrabackup'@'192.%' IDENTIFIED by 'xtrapassword'
Now, let’s assume our datadir is in C:/mysqldata, and we want to backup to C:/mysqlbackup. Needless to say, that XtraBackup image must run on the same server as MySQL’s datadir (since XtraBackup needs to access the data to copy it).
Now to take a backup we execute:
docker run --rm -it -v //C/mysqldata:/var/lib/mysql -v //C/mysqlbackup:/xtrabackup_backupfiles perconalab/percona-xtrabackup --backup --host=192.168.1.122 --user=xtrabackup --password=xtrapassword
We find our backup in C:/mysqlbackup when it is done.
Enjoy!
Resources
RELATED POSTS