使用xtrabackup不停服务做从库
Posted leoly
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用xtrabackup不停服务做从库相关的知识,希望对你有一定的参考价值。
一、安装xtrabackup
1、YUM安装,下载percona源:
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm
2、开始安装
yum install percona-xtrabackup-24
二、备份数据
1、在主库上全量备份数据:
innobackupex --user=dbuser --passwor=‘dbpassword‘ /dir_for_backup
注意password参数,如果密码中有关键字符,需要使用单引号把密码引起来,否则无法登录mysql,无法备份数据。
2、在主库上进行全量备份后,需要应用事务到备份文件中才能使备份文件完整可用
Innobackupex --user=dbuser --password=’dbpassword’--apply-log /dir_for_backup /2018-07-12_10-39-56/
3、在主库上把备份好的数据文件传输到从库中
scp -r /DIR_FOR_BACKUP /2018-07-12_10-39-56/ [email protected]_server_ip:/slave_server_data_dir
4、授权主从复制用户
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO ‘slaveUser‘@‘10.30.254.9‘ IDENTIFIED BY ‘slaveUser‘;
三、从库开启
1、 在从库上修改数据文件名称,拥有者
mv /slave_server_data_dir/2018-07-12_10-39-56/ /slave_server_data_dir/mysqldata
chown -R mysql:mysql /slave_server_data_dir/mysqldata/
2、 在从库上启动数据库
配置好my.conf文件,指定datadir目录到/slave_server_data_dir/mysqldata,然后启动数据库。
使用主库的用户名密码登录数据库,修改主从复制的binlog位置:
首先查看一下备份数据的binlog位置:
cat /slave_server_data_dir/mysqldata/xtrabackup_binlog_info
显示备份时的binlog位置信息:
mysql-bin.000215 776228273
其次,在从库中设置binlog同步位置:
CHANGE MASTER TO
MASTER_HOST=‘<master_host>‘,
MASTER_USER=‘ slaveUser ‘,
MASTER_PASSWORD=‘ slaveUser ‘,
MASTER_LOG_FILE=‘ mysql-bin.000215‘,
MASTER_LOG_POS=776228273;
最后,启动同步并查看同步状态:
start slave;
show slave status;
结果显示两个”YES“表示成功设置从库:
四、对从库做从库
需要在从库上开启log_slave_updates=ON才能让从库再做从库
以上是关于使用xtrabackup不停服务做从库的主要内容,如果未能解决你的问题,请参考以下文章