======================================

TID(Trasaction ID)
TID代表实例上已经提交的事务数量,并随着事务提交递增

UUID代表MYSQL实例的唯一表示

GTID(Global Trasaction ID)
GTID由MYSQL实例的UUID+已提交事务的TID组成,代表一个全局唯一的编号。

GTID的出现用来解决复制中一个事务在多个节点的binlog文件和位置不一样的问题,当主库发生故障切换后,复制的备库需要与新主库进行关联,使用master_log_file和master_log_pos来重新配置从库变得复杂困难,而基于GTID复制,备库无需关心GTID的位置,直接使用下面语句即可用轻松完成主库切换后的从库配置。:

CHANGE MASTER TO MASTER_HOST='xxx', MASTER_AUTO_POSITION

在MySQL 5.6版本中引入GTID,使用gtid_mode参数来开启或关闭GTID特性,但在MySQL 5.7版本中引入 Anonymous_Gtid的二进制日志event类型,即使在MySQL 5.7版本中停用GTID特性,也会在事务开始前创建一个Anonymous_Gtid。

======================================

使用GTID限制

1、无法使用SQL_SKIP_SLAVE_COUNTER命令跳过错误

2、无法搭建GTID模式实例和非GTID模式实例之间的复制。

3、不支持非事务型存储引擎如MYISAM

4、不支持CREATE TABLE SELECT 语句

5、不支持CREATE/DROP TEMPORARY TEBALE 操作

在MySQL 5.6版本中,gtid_mode参数全局只读,修改该参数需要重启实例。

在MySQL 5.7版本中,可以在线开启GTID模式,直达连接:http://dev.mysql.com/doc/refman/5.7/en/replication-mode-change-online-enable-gtids.html。

======================================

多线程复制:

1>exec_master_log_pos对复制不在有效,可以使用executed_gtid_set来查看复制进度

2>SQL_SLAVE_SKIP_COUNTER 无法使用

3>不支持START SLAVE UNTIL命令

4>slave_transaction_retries 参数被当做0来处理

======================================

GTID复制延迟监控

只有当网络正常且Master端随时有数据更新的的情况下,才可以使用seconds_behind_master来评估主从库之间的复制延迟。

======================================

MySQL Replication--GTID基础的更多相关文章

  1. 浅析 MySQL Replication(本文转自网络,非本人所写)

    作者:卢飞 来源:DoDBA(mysqlcode) 0.导读 本文几乎涵盖了MySQL Replication(主从复制)的大部分知识点,包括Replication原理.binlog format.复 ...

  2. 深入解析MySQL replication协议

    Why 最开始的时候,go-mysql只是简单的抽象mixer的代码,提供一个基本的mysql driver以及proxy framework,但做到后面,笔者突然觉得,既然研究了这么久mysql c ...

  3. 浅析 MySQL Replication(转)

    目前很多公司中的生产环境中都使用了MySQL Replication ,也叫 MySQL 复制,搭建配置方便等很多特性让 MySQL Replication 的应用很广泛,我们曾经使用过一主拖20多个 ...

  4. 浅析 MySQL Replication(本文转自网络)

    作者:卢飞 来源:DoDBA(mysqlcode) 0.导读 本文几乎涵盖了MySQL Replication(主从复制)的大部分知识点,包括Replication原理.binlog format.复 ...

  5. MySQL Replication 主从复制全方位解决方案

    1.1 主从复制基础概念 在了解主从复制之前必须要了解的就是数据库的二进制日志(binlog),主从复制架构大多基于二进制日志进行,二进制日志相关信息参考:http://www.cnblogs.com ...

  6. MySQL基于GTIDs的MySQL Replication

    MySQL M-S GTID 基于GTIDs的MySQL Replication 什么是GTIDs以及有什么特定? 1.GTIDs(Global transaction identifiers)全局事 ...

  7. Mysql基于GTID复制模式-运维小结 (完整篇)

    先来看mysql5.6主从同步操作时遇到的一个报错:mysql> change master to master_host='192.168.10.59',master_user='repli' ...

  8. (转)总结之:CentOS 6.5 MySQL数据库的基础以及深入详解

    总结之:CentOS 6.5 MySQL数据库的基础以及深入详解 原文:http://tanxw.blog.51cto.com/4309543/1395539 前言 早期MySQL AB公司在2009 ...

  9. mysql开启GTID跳过错误的方法【转】

    1.数据库版本 MySQL> select version()    -> ;+-------------------------------------------+| version( ...

  10. MySQL 基于 GTID 主从架构添加新 Slave 的过程

    内容全部来自: How to create/restore a slave using GTID replication in MySQL 5.6 需求说明 需求: 对于已经存在的 MySQL 主从架 ...

随机推荐

  1. TreeMap - 源代码学习笔记

    TreeMap 实现了 NavigableMap 接口,而NavigableMap 接口继承于 SortedMap接口. 所有本文还会记录 SortedMap 和 NavigableMap 的阅读笔记 ...

  2. 四:(之三)制作镜像和一些docker命令

    3.DIY image 3.1如何去掉sudo权限命令,让当前用户拥有操作docker的权限? 3.2 制作一个image: 拉取一个非常小的base image,hello-world.其中是一个可 ...

  3. 【阿圆实验】Grafana HA高可用方案

    一.实现Grafana高可用 1.Grafana实现高可用性有两步: >>使用共享数据库存储仪表板,用户和其他持久数据>>决定如何存储会话数据. 2.Grafana高可用部署图 ...

  4. swiftlint swift代码规范检查神器

    一大堆的你为什么要用swiftlint,你为什么要codereview,swiftlint到底在做什么,就不多说了,没意义,他就是帮助你写出规范漂亮代码的神器! 安装 官方提供了三种安装的方式 hom ...

  5. windows7环境下java jdk的配置

    第一步: 肯定是先下载好java jdk啦~~ 网址在这里:http://www.oracle.com/technetwork/java/javase/downloads/index.html 打开这 ...

  6. Turing equation

    Turing equation 时间限制: 1 Sec 内存限制: 128 MB 题目描述 The fight goes on, whether to store numbers starting w ...

  7. Find the Missing Number II

    Giving a string with number from 1-n in random order, but miss 1 number.Find that number. Notice n & ...

  8. 特殊权限set_uid

    set_uid:该权限针对二进制可执行文件,使文件执行阶段具有文件所有者的权限.比如passwd这个命令就具有该权限.当普通用户执行passwd命令时,可以临时获得root权限,从而可以更改密码. 作 ...

  9. git 继续前进篇

    * git 输入 git log (--all)命令后出现<END>标记? 按q退出历史记录列表即可 * 继续前一天的  继续推送到github  步骤看图 先 链接到 之前工作区 的 文 ...

  10. dd 命令的使用

    linux 下dd命令直接清除分区表(不用再fdisk一个一个的删除啦) 分区表是硬盘的分区信息,要删除一个硬盘的所有分区表很麻烦的,需要fdisk一个一个的删除,其实dd命令可直接清除分区信息,当然 ...