转载来源 :企业实战|Mysql不停机维护主从同步 : https://mp.weixin.qq.com/s/CQFmFhtRMFsESofDpTOvUA

实战环境:

  • Mysql-5.7
  • Xtrabackup-2.4

Xtrabackup 介绍:

Percona XtraBackup是一款基于MySQL的服务器的开源热备份实用程序,在备份过程中不会锁定数据库。它可以备份来自MySQL5.1,5.5,5.6和5.7服务器上的InnoDB,XtraDB和MyISAM表的数据,以及带有XtraDB的Percona服务器。
XtraBackup 有两个工具:xtrabackupinnobackupex

  • 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;Slave_IO_Running=YesSlave_SQL_Running=Yes

参考链接 :企业实战|Mysql不停机维护主从同步 : https://mp.weixin.qq.com/s/CQFmFhtRMFsESofDpTOvUA

企业实战|Mysql不停机维护主从同步相关推荐

  1. 监控mysql锁定状态_企业实战Mysql不停机维护主从同步

    实战环境: Mysql-5.7 Xtrabackup-2.4 Xtrabackup 介绍: Percona XtraBackup是一款基于MySQL的服务器的开源热备份实用程序,在备份过程中不会锁定数 ...

  2. MYSQL管理之主从同步管理

    原文地址:MYSQL管理之主从同步管理 作者:飞鸿无痕 MYSQL管理之主从同步管理 MYSQL主从同步架构是目前使用最多的数据库架构之一,尤其是负载比较大的网站,因此对于主从同步的管理也就显得非常重 ...

  3. 基于 CentOS Mysql 安装与主从同步配置详解

    CentOS Mysql 安装 Mysql (Master/Slave) 主从同步 1.为什么要使用主从同步 1.如果主服务器出现问题,可以快速切换到从服务器提供的服务 2.可以在从服务器上执行查询操 ...

  4. mysql数据库的主从同步(主服务器存在内网IP)

    1 分别在两台服务器上安装系统和mysql数据库 主服务器WIN2008R2,主服务器虚拟机和从服务器上是centos 7系统,并在centos 7系统安装mysql 5.7 本文中的两台服务器的IP ...

  5. mysql数据库的主从同步,实现读写分离

    目录 前言 1 分别在两台centos 7系统上安装mysql 5.7 2 master主服务器的配置 2.1 配置文件my.cnf的修改 2.2 创建从服务器的用户和权限 2.3 重启mysql服务 ...

  6. MySQL的主从复制主从同步

    MySQL 主从复制概念 MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点.MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数 ...

  7. MySQL数据库设置主从同步

    2019独角兽企业重金招聘Python工程师标准>>> MySQL主从同步的机制: MySQL同步的流程大致如下:  1.主服务器(master)将变更事件(更新.删除.表结构改变等 ...

  8. MySQL数据库实现主从同步

    安装MySQL数据库8.0.32 前言 今天来学习数据库主从同步的原理及过程,数据库主要是用来存储WEB数据,在企业当中是极为重要的,下面一起来看下. 1.1 数据库做主从的目的 MySQL主从复制在 ...

  9. linux怎么配置mysql数据库服务器_linux下指定mysql数据库服务器主从同步的配置实例...

    一. 概念:① 数据库同步  (主从同步 --- 主数据库写的同时 往从服务器写数据) ② 数据库同步  (主主同步 --- 两台数据库服务器互相写数据) 二. 举例数据库服务器(A) 主数据库   ...

最新文章

  1. 大掌柜商业管理系统服务器地址,大掌柜软件通用版操作说明.doc
  2. Android SurfaceView的生命周期
  3. 使用关指定中断解决资源冲突问题
  4. Spring中基于Java的配置@Configuration和@Bean用法
  5. 合并文件夹中子目录_如何整理文件夹,看这一篇就够了,简单易学
  6. 购物车完善版,客户余额及所购商品保存在文件
  7. 使用log4j2打印mybatis的sql执行日志
  8. apache httpd mysql_Centos7安装配置Apache(httpd)+php+mysql+phpMyAdmin
  9. oracle修改某个数据类型,Oracle 修改某个字段的数据类型三种方式
  10. 2019 年最好用的 7 款数据库监控工具
  11. python3 协程运行时 如何动态增加协程_python2.7 协程,如何调度运行两个协程?...
  12. centos 切换用户_Centos7系统切换Python2到Python3.x
  13. 字符串专题 【2008】四1 C++版
  14. SpaceX上天容易,Tesla自动驾驶难 | 凌云时刻
  15. threejs生成由内而外光圈、城市掠过。
  16. 《在雨中等你》读后感
  17. 【每日分享】我做程序员那些年犯下的罪,此时此刻我自己的笑出猪叫~
  18. DDR SDRAM的内部结构Cell Structure
  19. android+代码调用+相册+小米,Android调用系统相册选择图片,支持小米4云相册
  20. zblog php换域名,zblog 怎么更换域名

热门文章

  1. python 如何看到图标_如何设置CEF窗口图标(在python中)
  2. 每天执行一次批处理_关于静态批处理/动态批处理/GPU Instancing /SRP Batcher的详细剖析...
  3. linux 命令大全_【Linux】命令目录大全
  4. linux程序运行段错误,Linux下的段错误产生的原因及调试方法
  5. php 扩展加载顺序,关于PHP中extension加载顺序问题的解决方法
  6. wps中将文档输出为pdf_‎
  7. mysql实现俩个属性加减运算_1.3 算数运算符
  8. 德勤咨询:阿里云是跨国企业上云优选
  9. Windows Server上安装部署Zabbix agent
  10. centos6.8 配置mysql赋予mysql远程连接权限