首页 > 其他分享 >18、GTID复制 (Global Transaction ID 全局事务标识符)

18、GTID复制 (Global Transaction ID 全局事务标识符)

时间:2023-05-05 10:32:52浏览次数:32  
标签:Transaction slave 18 Global 并发 master GTID MASTER gtid

GTID复制 (Global Transaction ID 全局事务标识符)

GTID(Global Transaction ID 全局事务标识符) MySQL 5.6 版本开始支持,但不太成熟,建议使用 MySQL5.7以上版本的GTID功能 MySQL5.6版本出现没有默认开启,5.7中即使不开启也有匿名的GTID记录. 

1、开启GTID功能可以支持多DUMP线程的并发复制,而且MySQL5.6实现了基于库级别多SQL线程并发.在MySQL5.7利用GTID的 Logic clock 逻辑时钟.保证了同库级别下的事务顺序问题.即可以实现基于事务级别的并发回放.从而大大减少了同步的延迟
2、同时GTID具有幂等性特性,即多次执行结果是一样的 
3、利用 GTID复制不像传统的复制方式(异步复制,半同步复制)需要找到binlog文件名和POS点,只需知道master的IP,端口,账号,密码即可.开启GTID后,执行change master to master_auto_position=1即可,它会自动寻找到相应的位置开始同步
GTID优点
保证事务全局统一 
截取日志更加方便.跨多文件,判断起点终点更加方便 
判断主从工作状态更加方便 
传输日志,可以并发传输.SQL回放可以更高并发 
主从复制构建更加方便
GTID服务器相关选项
gtid_mode     gtid模式 
enforce_gtid_consistency   保证GTID安全的参数
GTID配置范例

1.主服务器

vim /etc/my.cnf
server-id=8
plugin-load-add = "semisync_master.so" 
rpl_semi_sync_master_enabled=ON 
rpl_semi_sync_master_timeout=3000
gtid_mode=ON   
enforce_gtid_consistency

2.从服务器

vim /etc/my.cnf
server-id=18
plugin-load-add = "semisync_slave.so" 
rpl_semi_sync_slave_enabled=ON
gtid_mode=ON   
enforce_gtid_consistency

如果主服务器和从服务器数据不一致,需要先将主库数据备份还原至从库,再执行下面操作

mysqldump -A --master-data=2 > /backup/full.sql

如果之前配置过下面的命令,就先停止从节点清除之后再配置

停止:stop slave;
清除:reset slave all;
mysql> CHANGE MASTER TO 
MASTER_HOST='10.0.0.105',
MASTER_USER='repluser',
MASTER_PASSWORD='123456',
MASTER_PORT=3306,
MASTER_AUTO_POSITION=1;#使用GTID

mysql> start slave;
注意观察:Retrieved_Gtid_set和Executed_Gtid_Set这两个值,对比主节点执行show master status的值,如果相同表示同步完成
设置了GTID,不管二进制新旧,只要存在,加上备份,就可以恢复数据,
如果reset master;二进制清除了,那就找不回来了
开启dump线程并发数 (8.26版本以上)
从节点配置文件中加
slave-parallel-workers=4
重启mysql   systemctl restart mysqld
查看dump线程开启数量
mysql> select @@slave_parallel_workers;


标签:Transaction,slave,18,Global,并发,master,GTID,MASTER,gtid
From: https://blog.51cto.com/mfc001/6244931

相关文章

  • Oracle (0xFFFFFC18): 连接请求超时
    报错信息:2023-05-0402:37:30.314+08:00[INF]Oracle.ManagedDataAccess.Client.OracleException(0xFFFFFC18):连接请求超时在OracleInternal.ConnectionPool.PoolManager`3.CreateNewPR(Int32reqCount,BooleanbForPoolPopulation,ConnectionStringcsWithDiffOrNe......
  • Win10更新KB5007186后共享打印机无法使用
         卸载大概10几分钟,卸载完之后会提示重启电脑,耐心等待重启,重启完成即可正常打印。为防止电脑的继续更新导致又出现这个问题,目前只能通过延迟win10的自动更新   ......
  • 基于stm32实现DS18B20温度检测仿真
    一、cubmax设置PA0作为DS18B20数据口 打开串口1,显示温度信息时钟树设置72MHZ。二、程序头文件/*USERCODEBEGINIncludes*/#include"DS18B20.h"#include"stdio.h"/*USERCODEENDIncludes*/串口重定向/*USERCODEBEGIN0*/intfputc(intch,FILE*f......
  • 时序约束总结(2)net18
    课程中对rx_clk和rx_data进行时序约束,实际采用时钟是经过PLL相移的rx_clk_90时钟和rx_datarx_ctrl的约束假设时钟Tskew的偏斜=2 ,数据的偏斜一般都很小,大概是数据周期的1/40,假设周期为8ns,则数据偏斜为0.2ns  注意,这里是双边沿采样之前章节的计算方法:dMax=2+sk......
  • cf1823
    A.A-characteristic题目链接由于出现数字只可能是1或-1,那么假设数列全为-1,依次枚举1出现的个数,可以得出结论不是所有数字都有答案的,由于会有重复数字出现,只需要枚举1的个数x<=n/2即可。//Problem:A.A-characteristic//Contest:Codeforces-CodeforcesRound868(Div.......
  • global mapper显示shp属性标注
    globalmapperprov24.0版本,打开shp文件,点中需标注的shp文件,右键——图层——创建标签图层:标签-设置要素标签显示-使用所选属性值-“在包含当前shp所有属性字段下拉列表里选择需要显示的属性字段”或者(菜单栏——图层——创建标签图层)。 ####################global......
  • 18 对话于冰(上)|怎样成为那个有准备的人?【视频1】
    你好,我是辰洋,是《郭东白的架构课》的负责人。在专栏的第一模块中,东白老师从他二十多年的架构经验里,提取出了六条生存法则,来帮助架构师组织架构活动、为企业创造增量价值。不过除此之外,东白老师还想让你听到更多顶尖架构师的声音。所以,我们特地策划了对话节目,将邀请业内更多技术领......
  • 20 18 | 加解密服务平台:如何让敏感数据存储与传输更安全?
    你好,我是李智慧。在一个应用系统运行过程中,需要记录、传输很多数据,这些数据有的是非常敏感的,比如用户姓名、手机号码、密码、甚至信用卡号等等。这些数据如果直接存储在数据库,记录在日志中,或者在公网上传输的话,一旦发生数据泄露,不但可能会产生重大的经济损失,还可能会使公司陷入重......
  • 18 16 | 高可用架构的十种武器:怎么度量系统的可用性?
    你好,我是李智慧。互联网应用是面向一般大众的应用系统,他们可能会随时需要使用应用,那么应用就必须要保持随时可用,即所谓的$small7times24$小时可用。但是互联网应用又可能会遇到硬件故障、软件故障、黑客攻击等等各种不可用的场景。业界通常用多少个9来说明互联网应用的可用性。......
  • Ubuntu 18.04 Server版下载与安装
    1、下载地址https://releases.ubuntu.com/releases/2、系统镜像版本区别ubuntu-18.04.3-live-server-amd64.iso#带live,ISO镜像提供不安装就可以试⽤系统的功能ubuntu-18.04.3-server-amd64.iso  #不带live,不可⽤试⽤,但是可以直接进⾏系统安装3、不同CPU指令集的ISO镜像C......