mysql5.7下使用xtrabackup不停机在线增加从库实例



一、注意点,也是不停机增加从库条件:

1、主库binlog已经开启,否则需要先增加binlog日志记录写入(如果原来已经是主从结构,则无需理会。);
2、不同版本的mysql需要使用不同版本的xtrabackup,官方已经说明,Xtrabackup的 2.4版本开始支持 MySQL 5.7 版本,之前的版本不支持5.7;
3、下面的操作模拟对实例中所有库迁移,包括mysql库(如有用户信息不需要,可恢复后执行删除操作。);
4、由于xtrabackup是物理备份的方式,备份速度快,在恢复后,执行从主库同步到从库时需要载入binlog文件与log_pos节点,所以在执行备份时,主库尽量不要跨binlog文件进行;

二、主从xtrabackup的安装: 

# wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.4/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.4-1.el7.x86_64.rpm
# yum localinstall percona-xtrabackup-24-2.4.4-1.el7.x86_64.rpm
# yum -y install perl-Digest-MD5


三、开始准备与执行备份操作

1、停止从库
2、修改my.cnf配置文件中数据目录地址【从datadir 读取】

主上执行:

#innobackupex --defaults-file=/etc/my.cnf --host=127.0.0.1 --user=root --password='pwd123456' --port=3306 --tmpdir=/tmp /dbbk/db/

// 默认情况下以上命令中最后指定的备份目录为上级目录,最终会在此目录中生成以日期和时间命名的目录为每次备份目录【例如:2021-05-10_14-54-06】,如果不想用这种命名方式,也可直接指定目录为根目录,方法:// 加--no-timestamp 参数直接备份到指定目录。

#scp -P 22 -r /dbbk/db/2021-05-10_14-54-06/ 从ip:/data/dbbk/   

// 将备份出来的目录复制到新准备的从机器

从上执行:

#innobackupex --apply-log /dbbk/db/2021-05-10_14-54-06/     

// 此命令用来修复还没有执行同步的事务。

#innobackupex --defaults-file=/etc/my.cnf --copy-back /data/dbbk/2021-05-10_14-54-06/   

// 此命令需要注意,my.cnf 【从datadir 读取】恢复目的目录。

四、检查权限
默认情况下,恢复到目的目录的权限可能与原来安装mysql后保存数据的目录权限不同,为了避免mysql启动出现报错,所以我们可以先将数据目录用chown命令修改成原来权限。

五、启动数据库
执行启动数据库,我们可以查看mysql的启动日志,避免出现和发现报错信息;此外,启动成功后,我们可以将不需要的用户信息删除,避免出现权限混乱。

六、启动数据库成功并检查无误后,我们再次停止从库,将从库需要的配置增加到my.cnf配置文件,然后启动mysql服务。例如以下: 

server-id=2
slave-parallel-type=LOGICAL_CLOCK
slave-parallel-workers=8
master_info_repository=TABLE
relay_log_info_repository=TABLE
relay_log_recovery=ON


七、启动后,我们登录到mysql ,我们可以先stop slave(当然,此时slave应该是停止的。),随后,执行增加主库的同步配置操作:

> change master to master_host='172.11.22.11', master_user='slave', master_password='pwd123456',master_log_file='mysql-bin.000210', master_log_pos=35211393;
> start slave;  

// 如何获取当前的binglog文件和log_pos值,可以cat /dbbk/db/2021-05-10_14-54-06/   (备份目录中) xtrabackup_binlog_pos_innodb文件。
// 启动slave的同步

八、验证数据同步和完整性 

> show slave status\G







本文标签: mysql5.7 xtrabackup 不停机 增加从库

内容版权声明:【蓝色网居】部分资源来源于网络,如有侵犯您的所有权,请随时告知我们,我们将立即删除!感谢配合!

转载请注明出处:https://blog.ff56.cn/shujuku/1657868757.html


【手机扫一扫查看文本】

手机扫一扫 手机扫一扫查看文本 手机扫一扫





三主三从节点 备份 mysql5.7 不停机 xtrabackup centos7 增加从库 三主三从 常用操作 慢查询 表空间 mysql慢日志 postgresql mysqldump redis 增量恢复 三台机器 redis3.0集群环境 mysql 持久化 dump操作 自动备份 general_log 数据恢复 主从同步 redis6.0 指定表 日志归档 任务事件 情况处理