GTID 参数gtid_executed和gtid_purged
GTID:
全称:global transaction identifier
何时产生:
当一个事务提交时,就会分配一个GTID(前提是事务有写入到binlog),GTID单调递增且连续。
GTID格式:
GTID = source_id:transaction_id
其中 source_id 一般指 source 的 server_uuid , 示例:
3E11FA47-71CA-11E1-9E33-C80AA9429562:23
gtid_executed
系统表 mysql.gtid_executed 存放了所有执行过的GTID(在活动的binlog中的除外),但是由于不包含活动的binlog当中的GTID,因此需要查看精确值时,可以查看 global variable gtid_executed 的值,
这个变量的值是准确的(或者 show master status )。
gtid_executed等价Executed_Gtid_Set参数,已经执行的gtid集合(gtid-sets)。
gtid_purged:
gtid_purged,已经清除的gtid集合(历史事务binlog已被删除)。
包含了所有已经提交过的,但是不在 binlog 当中的 GTID ,它是 gtid_executed 的子集。以下几种 GTID 都会添加到 gtid_purged 当中:
- 未开启binlog的从库上提交过的GTID
- 已经被 "purge" 掉的 binlog 当中的 GTID 。(当发出 purge binary log 命令之后,如果被 purge的binlog中包含有GTID,那么查看 gtid_purged 变量值的时候,就会看到该变量值发生了变化)
- 使用 'set global gtid_purged= "xxxx" ' 添加的 GTID
人为设置 gtid_purged 的目地是为了告诉服务器,即使它们不在 binlog 中,这些 GTID 已经 被applied过了,不能/不需要再做重做。
同时查看当前gtid_executed,gtid_purged值
show global variables like '%gtid%';
本文来自博客园,作者:whiteY,转载请注明原文链接:https://www.cnblogs.com/whiteY/p/17337036.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)