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

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. Thêm Một Lần Đau--错错错--IPA--越南语

    越南国际天团HKT的名曲.

  2. zabbix安装部署(server部分)

    Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员. 今天开始研究下Zabbix,使 ...

  3. idea查看jar包是否存在

    idea在project目录下如下图(1),是总的pom文件,定义了四个子模块共用的依赖,并且其中定义了四个子模块,,每个模块都有各自的pom.xml文件.结构目录只有一个总的lib库. 但是可能在s ...

  4. Fedora的一些个人配置

    0,老传统 yum install screenfetch 1,关闭蜂鸣器 edit /etc/bashrc setterm -blength 0#setterm -bfreq 10 #这个可以设置声 ...

  5. c/c++动态内存分配的区别

    c中动态内存分配使用malloc和free. malloc指定需要分配的内存大小,分配成功则返回指向该内存的指针,不成功则返回空指针.返回的指针类型为void *,表示不确定指针所指内存存放的数据类型 ...

  6. 实力封装:Unity打包AssetBundle(一)

    说明:这是一系列循序渐进的教程,今天先介绍最简单的AssetBundle打包方式. 这是一个由在Unity中需要加载模型而引发出来的一系列坑,为了填坑花了不少时间,如果有需要在Unity中自定义菜单, ...

  7. 实力封装:Unity打包AssetBundle(二)

    →前情提要:Unity最基本的AssetBundle打包方式. 第二种打包方式 Unity提供的BuildAssetBundles API还有一个重载形式,看下面↓↓ public static As ...

  8. HDU 6060 17多校3 RXD and dividing(树+dfs)

    Problem Description RXD has a tree T, with the size of n. Each edge has a cost.Define f(S) as the th ...

  9. SQL注入之Sqli-labs系列第一关

    在开始接触渗透测试开始,最初玩的最多的就是Sql注入,注入神器阿D.明小子.穿山甲等一切工具风靡至今.当初都是以日站为乐趣,从安全法实施后在没有任何授权的情况下,要想练手只能本地环境进行练手,对于sq ...

  10. meson 中调用shell script

    meson 中有时需要调用其他脚本语言,加之对meson build system接口和原理不熟悉,无奈只有静心学习meson 官方文档,终于皇天不负有心人让我找到了: run_command() 只 ...