XtraBackup不停机不锁表作MySQL主从复制的试验

环境:Centos6.五、MySQL5.七、XtraBackup2.4.13(通过测试、此版本适合MySQL5.7)mysql

1、这里是先安装宝塔Linux5.9集成环境、以后再安装MySQL

# yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh
复制代码

2、安装XtraBackup ,rpm方式安装

# yum install perl-Time-HiRes
# yum install -y perl-DBD-MySQL
# yum install -y perl-Digest-MD5
# yum install -y rsync
# yum install -y numactl-devel 
# wget https://www.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.13/binary/redhat/6/x86_64/percona-xtrabackup-24-2.4.13-1.el6.x86_64.rpm
# rpm -ivh percona-xtrabackup-24-2.4.13-1.el6.x86_64.rpm
复制代码

3、配置主从数据库

一、主库配置my.cnfsql

[mysqld]
#增长server-id 和 bin-log
server-id = 198
log-bin = mysql-bin
复制代码

二、主库配置受权帐号数据库

mysql> grant replication slave on *.* to root@‘192.168.199.198’ identified by '51562e6f6d044223';
mysql> flush privileges; 
复制代码

三、从库配置my.cnfbash

[mysqld]
增长server-id 和 bin-log
server-id = 199
slave_skip_errors=1062 #1062是指跳过一些主键重复的错误

#若是须要在从库上作bin-log备份能够添加以下参数
log-bin = mysql-bin   
log-slave-updates = 1   
expire-logs-days=10
复制代码

主从数据库都要重载配置ide

4、全量备份

[root@Centos]# xtrabackup --defaults-file=/etc/my.cnf --host=127.0.0.1 --user=root --password=51562e6f6d044223 --port=3306 --backup --target-dir=/www/backup/xtrabackup/

[root@Centos]# ls /www/backup/xtrabackup/
复制代码

xtrabackup会把数据库datadir下的全部数据 文件都复制过来还新增了4个xtrabackup_开头的文件,xtrabackup_binlog_info这个录了作从库须要change到主库的binlog的位置和pos点测试

5、恢复数据到从库

一、中止从库 把主库备份文件拷贝到从库机器ui

[root@Centos]# scp -r xtrabackup/* root@192.168.2.199:/www/server/data
复制代码

二、修改恢复文件权限spa

[root@Centos]# chown -R mysql:mysql /www/server/data 
复制代码

三、启动从数据库 确认数据是否恢复成功 登陆从库,执行code

mysql> show databases;
复制代码

6、开启主从同步

一、确认同步的位置点 在从库上或者主库上均可以查看该信息,咱们是在从库上查看server

[root@Centos]# cat /www/server/data/xtrabackup_binlog_info 
mysql-bin.000010        301846
复制代码

二、配置从库 主从配置 (注意3306端口的开放) #登陆从库并执行

mysql> change master to master_host='192.168.2.198', master_user='root', master_password='51562e6f6d044223', master_port=3306, master_log_file='mysql-bin.000010' , master_log_pos=301846, master_connect_retry=30;
复制代码

三、开始同步

mysql> start slave;
复制代码

四、查看同步状态

mysql> show slave status;
复制代码

当Slave_IO_Running 与 Slave_SQL_Running 两项都为Yes时,表明主从配置成功。

相关文章
相关标签/搜索