设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 技术文摘 查看内容

MySQL 5.6 复制:GTID 的优点和限制(第一部分)

2013-5-24 11:51| 发布者: 红黑魂| 查看: 9980| 评论: 0|来自: 开源中国

摘要: 全局事务标示符(Global Transactions Identifier)是MySQL 5.6复制的一个新特性。它为维护特定的复制拓扑结构下服务器的DBA们大幅度改善他们的工作状况提供了多种可能性。然而,你还应该明白当前实现的一些局限。本 ...

再试:启用GTID,混合使用普通复制和GTID复制

这次我们在1号从机而不是2号从机上启用GTID:

1# slave #1
2mysql> change master to master_auto_position = 1;
3mysql> start slave;

接下来让我们在主机上创建一个新表: 

1mysql> create table test.t (id int not null auto_increment primary key);

在两个从机上都运行SHOW TABLES FROM test表明,所有的服务器都创建了这个新表。因此,一旦在所有的

服务器上启用GTID,你就可以让某些从机使用基于文件的定位而让另外一些从机使用基于GTID的定位。

这就回答了第二个问题:我们可以让不同的服务器具有不同的复制模式,但所有的服务器必须将将gtid_mode设

置为ON。在gtid_mode为ON的情况下还运行基于文件的复制,这能有什么意思?我还没有发现这有什么用处,

所以在实践中,你可能会要么只用基于文件的复制在(所有服务器都设置为gtid_mode=off),要么只用基于GTID

的复制(所有服务器都设置为gtid_mode=on)。


还有一个问题:如何通过查看SHOW SLAVE STATUS的输出才能看出来一个从机是不是基于GTID的复制?

这可以通过查看最后一个字段,Auto_Position,的值进行区分:

1# Slave #1
2mysql> show slave status\G
3[...]
4Auto_Position: 1  -> GTID-based positioning
5# Slave #2
6mysql> show slave status\G
7[...]
8Auto_Position: 0  -> File-based positioning


结束语

如果你的应用轻易不能容忍停机时间或者只读模式,那么基于GTID的复制启用起来就会非常棘手,特别在需要

重新配置大量服务器的情况下,便更是如此了。要是能将gtid_mode为ON的服务器同gtid_mode为OFF的服务

器混合使用就好了,因为这样的话,就就能够简化转向基于GTID的复制的所需的过程,如果出了错还更容易进行回滚。


英文原文:Replication in MySQL 5.6: GTIDs benefits and limitations – Part 1


参与翻译(1人)

酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部