Mysql热备份
percona/percona-xtradb-cluster版本号5.7.21,经测试高版本有问题。
创建备份数据卷
docker volume create backup
创建PXC容器映射备份数据卷
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=node2 -v v1:/var/lib/mysql -v backup:/data –privileged –name node1 –net=net1 –ip 172.18.0.2 pxc
PXC容器中安装XtraBackup,并全量备份
使用root权限进入PXC容器:
docker exec -it -u 0 node1 bash
apt-get update
apt-get install percona-xtrabackup-24
innobackupex –user=root –password=123456 /data/backup/full
Mysql冷还原
停止其余节点容器
docker stop node2 node3 node4 node5
docker rm node2 node3 node4 node5
docker volume rm v2 v3 v4 v5
删除PXC容器数据
docker exec -it node1 bash
rm -rf /var/lib/mysql/*
回滚没有提交的事务
innobackupex –user=root –password=123456 –apply-back /data/backup/full/2019-10-10_05-09-07/
还原数据
innobackupex –user=root –password=123456 –copy-back /data/backup/full/2019-10-10_05-09-07/
重启节点
docker stop node1
docker start node1
参考博客:
https://blog.csdn.net/belonghuang157405/article/details/80905657
https://www.ornnth.com/2018/11/18/Docker-7-%E7%83%AD%E5%A4%87%E4%BB%BD%E6%95%B0%E6%8D%AE/
https://blog.wesbin.com/archives/docker_hot_backup_mysql.html