1. 相关准备
xtrabackup:percona出品的MySQL在线备份还原工具
IST:Incremental State Transfer,增量传输
SST:State SnapShop Transfer,全量传输
备注:SST,适用于搭建新集群、数据少、业务少时加入Node
备注:IST+xtrabackup,适用于老集群、节点坏死、增加读节点时加入Node
备注:集群默认上已经安装并配置好PXC,xtrabackup
2. 备份(旧Node)
cd /home/data/mysql/backup/
innobackupex –user=backupuser –password=backuppassword ./
tar -cvf 2018-03-09_10-08-08.tar 2018-03-09_10-08-08/
cd /home/data/mysql/data/
cat grastate.dat
# GALERA saved state
version: 2.1
uuid: 30006e50-8324-11e7-b50e-4a60c547bd45
seqno: -1
safe_to_bootstrap: 0
备注:目录结构/home/data/mysql/{data,log,run,backup}
备注:grastate.dat,记录PXC集群状态,新Node会用到
3. 传输(旧->新)
scp 2018-03-09_10-08-08.tar root@172.16.3.34:/home/data/mysql/backup/
4. 还原(新Node)
cd /home/data/mysql/backup/
tar -xvf 2018-03-09_10-08-08.tar
innobackupex –apply-log ./2018-03-09_10-08-08/
innobackupex –copy-back ./2018-03-09_10-08-08/
5. 准备(新Node,启动前)
cd /home/data/mysql/data/
cat xtrabackup_galera_info
30006e50-8324-11e7-b50e-4a60c547bd45:58883103
vim grastate.dat
# GALERA saved state
version: 2.1
uuid: 30006e50-8324-11e7-b50e-4a60c547bd45
seqno: 58883103
safe_to_bootstrap: 0
备注:xtrabackup_galera_info,记录{uuid}:{seqno}
备注:grastate.dat,从旧Node复制,修改seqno,它就是IST开始同步的binlog_pos
chown -R mysql:mysql *
6. 启动(新Node)
service mysql start
Starting MySQL (Percona XtraDB Cluster)….SST in progress, setting sleep higher
[ OK ]
备注:ps -ef | grep wsrep_start_position,查看IST同步状态
备注:mysql> show status like 'wsrep%';