千家信息网

MySQL如何不停机维护主从同步

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇文章给大家分享的是有关MySQL如何不停机维护主从同步,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实战环境Mysql-5.7Xtr
千家信息网最后更新 2026年11月02日MySQL如何不停机维护主从同步

本篇文章给大家分享的是有关MySQL如何不停机维护主从同步,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

实战环境

  • Mysql-5.7

  • Xtrabackup-2.4

Xtrabackup 介绍

Percona XtraBackup是一款基于MySQL的服务器的开源热备份实用程序,在备份过程中不会锁定数据库。

它可以备份来自MySQL5.1,5.5,5.6和5.7服务器上的InnoDB,XtraDB和MyISAM表的数据,以及带有XtraDB的Percona服务器。

XtraBack XtraBackup 工具 up 工具

Xtrabackup 本身只能备份InnoDB和XtraDB,不能备份MyISAM。

innobackupex 封装了xtrabackup的perl脚本,覆盖了Xtrabackup的功能。它不但可以备份nnodb和xtradb两种引擎的表,还可以备份myisam引擎的表(在备份myisam表时需要加一个读锁)。

Xtrabackup特点

备份过程快速、可靠;

备份过程不会打断正在执行的事务;

能够基于压缩等功能节约磁盘空间和流量;

自动实现备份检验;

还原速度快;

Xtrabackup备份实现原理

innobackupex开启xtrabackup_log监控线程,实时监测redolog文件的变化,将新备份过程中新写入到事务日志中的日志拷贝至innobackup_log中;

同时开启xtrabackup拷贝线程,开始拷贝innodb文件,拷贝数据数据结构,记录当前binlog及position完成备份。

全备恢复原理

将全备文件进行xtrabackup_log日志回放,并对提交的事务进行重做,同时rollback未提交的事务。并将全备文件复制到mysql 下的data目录下。

主数据库

1、安装xtrabackup工具

$ yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm$ yum update percona-release$ yum install percona-xtrabackup-24 -y

2、主数据库全量备

# 全量备份$ innobackupex --defaults-file=/etc/my.cnf --user=root --password=magedu /data/backup  # 保持事务一致性 apply-log的作用是通过回滚未提交的事务及同步已经提交的事务至数据文件处于一致性状态,把已提交的事务合并到ibdata文件$ innobackupex --apply-log /data/backup/2020-03-28_19-13-07

3、 将主数据库备份文件压缩并拷贝到从数据库

$ tar czf backup.tar.gz 2020-03-28_19-13-07  $ scp -r /data/backup/backup.tar.gz 172.21.0.8:/data/backup/

4、 主库授权同步帐号

mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave_passport';mysql> FLUSH PRIVILEGES;

5、查看主库备份到位置,从库从备份位置开始同步

$ cat /data/backup/2020-03-28_19-13-07/xtrabackup_binlog_infomysql-bin.000001    1053

从数据库操作

1、从数据全量恢复

$ cd /data/backup/ && tar xf backup.tar.gz$ innobackupex --defaults-file=/etc/my.cnf --user=root --copy-back /data/backup/2020-03-28_19-13-07

2、修改数据文件权限

$ chown -R mysql:mysql /var/lib/mysql

3、 启动从数据库

$ systemctl restart mysqld

4、查看主数据库第五步主库备份的位置,开始同步

mysql> CHANGE MASTER TO MASTER_HOST='172.21.0.9', \  MASTER_USER='slave', \  MASTER_PASSWORD='slave_passport', \  MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000001', \  MASTER_LOG_POS=1053;

5、开启主从同步

mysql> start slave;mysql> show slave status\G;  # 下面二个Yes代表已经正常同步了Slave_IO_Running=YesSlave_SQL_Running=Yes

以上就是MySQL如何不停机维护主从同步,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

备份 数据 同步 事务 数据库 文件 拷贝 过程 主从 位置 工具 日志 服务器 全备 服务 实用 一致 一致性 功能 原理 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 百单网互联网科技有限公司怎么样 广州紫鲸互联网科技有限公司 高科技互联网 深圳恒合互联网络科技有限公司 互联网最新的科技有限公司 互联网金融 科技金融 科技创新互联网企业 壕鑫互联网络科技 唐信互联网科技 大连 狮子座互联网科技培训 新华互联网科技校企合作 哈尔滨秒房互联网科技有限公司 互联网科技商业 中国科技创新与世界互联网大会 乌鲁木齐新华智原互联网科技学校 东莞新华互联网科技学校 长沙茂晟互联网科技有限公司 中和天地互联网科技有限公司 互联网方面的科技前沿 保山互联网科技靠谱吗 没上市的科技互联网公司 艾特科技互联网 上游互联网科技 互联网科技创新企业排名 互联网科技公司实习生 晓花互联网科技有限公司网址 保险科技服务互联网营销体系 中和天地互联网科技有限公司 长沙渺峰互联网科技有限公司 互联网 科技节活动 微视频大赛
0