mysql的主从复制-基于GTID的异步主从复制

本文介绍基于GTID的MySQL异步主从复制,对比传统方式,阐述GTID简化复制任务和保证主从一致性的优势。通过实验环境演示配置过程,包括配置文件修改、启动与检查。建议在阅读后,查看提供的链接以深入理解原理。
摘要由CSDN通过智能技术生成

在上一篇博客中,我写了异步主从复制,这篇博客中,我将表述基于GTID的异步主从复制,分析两者有何区别,GTID又有什么优点

官方对于GTID的解释翻译:

全局事务标识符(GTID)进行基于事务的复制。当使用GTID时,每个事务都可以被识别和跟踪,因为它是在原始服务器上提交的,并且由任何从属服务器应用的;这意味着在启动新的从属服务器或故障转移到新的主服务器时,使用GTID引用这些文件中的日志文件或位置是不必要的,这大大简化了这些任务。因为基于GTID的复制完全基于事务,所以很容易确定主服务器和从服务器是否一致;只要在主服务器上提交的所有事务也在从服务器上提交,就可以保证两者之间的一致性。

推荐一个链接,里面讲解的原理,结构图很清晰

https://yq.aliyun.com/articles/57731

这里,我先做实验,做完实验再简单说一下原理,上面的链接可以在看完本篇博客之后去看,不推荐一开始就看

实验环境:rhel7.3

master  172.25.15.1  (server1)

slave 172.25.15.2 (server2)

数据库版本:mysql5.7

压缩包下载地址:http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.7/

在上一篇博客的基础上,查看主从复制是否成功

可以看到,slave_IO和SQL都运行正常

首先,master和slave编辑mysql配置文件,加入gtid模块

vim /etc/my.cnf

编辑内容如下:

重启mysql服务

systemctl restart mysqld

slave登录数据库,停止slave

[root@server2 ~]# mysql -p
  mysql> stop slave;

告诉从机主机的IP,用户,密码,以及设置master_auto_position=1

这就是与上一篇的不同之处,可以这么理解,GTID会自动告诉slave主机的二进制日志文件以及position号,这些都是自动的。

mysql> change master to master_host='172.25.15.1',master_user='repl',master_password='Yakexi+007',master_auto_position=1;

开启slave

mysql> start slave;

查看slave状态

mysql> show slave status\G

测试同上一篇博客测试

也可以通过select * from gtid_executed;来查看一些参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值