目的:10.4.1.1节点作为主库,10.4.1.2作为从库搭建主从。
软件:
MySQL 5.7.24
pecona-xtrabackup-24-2.4.22-1.el7.x86_64.rpm
#步骤一:在10.4.1.1 MySQL实例上新建用于主从同步的用户。
mysql> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'repl'@'%' IDENTIFIED BY 'Repl@123';
#步骤二:在10.4.1.1节点执行
xtrabackup --user='lachlan' --password='Password123%' --target-dir=/home/app/dbbackup/$(date +%Y-%m-%d) --backup --rsync --ftwrl-wait-timeout=600 --check-privileges
#=====================================
#步骤三:可在10.4.1.1节点执行,也可将步骤一生成数据传输到10.4.1.2节点上执行。本文在10.4.1.1先prepare了。
xtrabackup --target-dir=/home/app/dbbackup/$(date +%Y-%m-%d)--prepare
#会打印关于gtid相关的字段,先记录方便后续搭建主从使用。
#=====================================
#步骤四:清除10.4.1.2 MySQL的数据目录下所有文件,传输prepare后的文件到该目录。
#在10.4.1.1节点执行scp传输到10.4.1.2的/home/app/mysql/下
scp -r /home/app/dbbackup/$(date +%Y-%m-%d)/* root@10.4.1.2:/home/app/mysql
#步骤五:在10.4.1.2上将传输后的文件全部更改属主属组为MySQL。
chown -R mysql:mysql /home/app/mysql
#步骤六: 在10.4.1.2的MySQL执行。
mysql> reset master;
mysql> reset slave all;
mysql> SET GLOBAL gtid_purged = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx:x-xxxxxxxxxx'; #步骤三记录的gtid
mysql> change master to
-> master_host='10.4.1.1'
-> master_user='repl'
-> master_password='Repl@123'
-> master_port=3306
-> master_auto_position=1;
mysql> start slave;
mysql> show slave status\G #查询得知Slave_IO_Running和Slave_SQL_Running均为Yes即成功搭建。