一、安装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/ slave_user@slave_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“表示成功设置从库:

使用xtrabackup不停服务做从库-LMLPHP

四、对从库做从库

需要在从库上开启log_slave_updates=ON才能让从库再做从库

05-11 22:11