05-基于GTID技术搭建主从复制


GTID (Global Transaction ID),也就是全局事务ID, 其保证为每一个在master主上提交的事务在复制集群中可以生成一 个唯一的 ID。

基于GTID的复制是从MySQL5.6开始支持的一种新的复制方式,此方式与传统基于binlog日志的方式存在很大的差异,在原来的基于日志的复制中,slave从服务器连接到 master,主服务器并告诉主服务器要从哪个二进制日志的偏移量开始执行增量同步,这时我们如果指定的日志偏移量不对,这 与可能造成主从数据的不一致,而基于GTID的复制会避免。

在基于GTID的复制中,首先从服务器会告诉主服务器已经 在从服务器执行完了哪些事务的 GTID 值,然后主库会有把
所有没有在从库上执行的事务,发送到从库上进行执行,并 且使用 GTID 的复制可以保证同一个事务只在指定的从库上
执行一次,这样可以避免由于偏移量的问题造成数据不一致。

GTID格式=source_id:transaction_id
source_id就是执行事务的主库的server‐uuid值server‐uuid值是在mysql服务首次启动生成的保存在数据 库的数据目录中,在数据目录中有一个auto.conf文件

查看UUID:

mysql> show variables like '%uuid%';

事务ID则是从1开始自增的序列,表示这个事务是在主库上执行的第几个事务。

配置步骤

主库配置

[root@mysql01 ~]# vi /etc/my.cnf
character_set_server=utf8
server-id=101
log-bin=mysql-bin
gtid_mode=on
enforce_gtid_consistency=on

创建同步用户

mysql> grant replication slave,replication client on *.* to 'gtid'@'%' identified by '000000';
mysql> flush privileges;

##查看主库状态

mysql> show master status;
+------------------+----------+--------------+------------------+------------------------------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                        |
+------------------+----------+--------------+------------------+------------------------------------------+
| mysql-bin.000002 |      609 |              |                  | f1ec3e3f-51f3-11ea-9628-005056285bae:1-2 |
+------------------+----------+--------------+------------------+------------------------------------------+
1 row in set (0.00 sec)

从库配置

开启gtid

[root@mysql02 /]# vi /etc/my.cnf
character_set_server=utf8
server-id=102
gtid_mode=on
enforce_gtid_consistency=on

配置同步

CHANGE MASTER TO
  MASTER_HOST='192.168.17.131',
  MASTER_USER='gtid',
  MASTER_PASSWORD='000000',
  MASTER_AUTO_POSITION=1; # 自动同步不用关心日志的位置

开启slave

mysql> start slave;
mysql> show slave status\G;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值