上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.1.2 GTID的基本表示
为了严谨,笔者尽量使用源码的术语解释,后面也会沿用这些术语。
GTID:单个GTID,比如24985463-a536-11e8-a30c-5254008138e4:5。对应源码中的类结构Gtid。注意源码中用sid代表GTID前面的server_uuid,gno则用来表示GTID后面的序号。
gno:单个GTID后面的序号,比如上面的GTID的gno就是5。这个gno实际上是从一个全局计数器next_free_gno中获取的。
GTID SET:一个GTID的集合,可以包含多个server_uuid,比如常见的gtid_executed变量,gtid_purged变量就是一个GTID SET。类似的,24985463-a536-11e8-a30c-5254008138e4:1- 5:7-10就是一个GTID SET,对应源码中的类结构Gtid_set,其中还包含一个sid_map,用于表示多个server_uuid。
GTID SET Interval:代表GTID SET中的一个区间,GTID SET中的某个server_uuid可能包含多个区间,例如,1-5:7-10中就有2个GTID SET Interval,分别是1-5和7-10,对应源码中的结构体Gtid_set::Interval。