Debezium系列之:深入理解GTID全局事务标识,并记录一次数据库重启造成数据丢失的原因和解决方案

Debezium系列之:深入理解GTID,并记录一次数据库重启造成数据丢失的原因和解决方案

  • 一、背景
  • 二、深入理解什么是GTID
  • 三、深入理解gtid的uuid部分
  • 四、判断GTID之间的顺序大小
  • 五、解决方案

一、背景

  • hive数据库的表与源头业务数据库的数据不一致,经过检查发现源头数据库发生了重启,造成了binlog文件名称的变化,从而下游在解析debezium数据的时候出现了遗漏
  • 针对这个情况,考虑应用gtid确保数据的一致性和可靠性

二、深入理解什么是GTID

  • GTID (Global Transaction Identifier) 是 MySQL 中用于唯一标识事务的全局标识符。每个事务都被分配一个唯一的 GTID,用于在主从复制中进行事务的追踪和同步。
  • 在给定的 GTID “eb1e5031-60c4-11ed-9363-b8599f2795e8:4682321465” 中,可以将它分为两部分:UUID 和数字部分。UUID 部分 “eb1e5031-60c4-11ed-9363-b8599f2795e8” 是一个唯一的标识符,用于标识产生 GTID 的服务器。每个服务器都会有自己的 UUID。数字部分 “4682321465” 是该 GTID 在特定服

你可能感兴趣的:(debezium,Debezium系列,GTID全局事务标识,记录一次数据库重启造成数据丢失,原因和解决方案)