查看主备库的gtid是否一致
要查看主备库的gtid是否一致,可以执行以下步骤:
- 在主库上执行以下命令查看主库的gtid_executed值:
show global variables like 'gtid_executed';
- 在备库上执行以下命令查看备库的gtid_executed值:
show global variables like 'gtid_executed';
- 对比主备库的gtid_executed值是否一致,如果一致,则主备库的gtid是一致的,否则就需要进一步排查原因。
注意:如果主备库的gtid_executed值不一致,可能是由于主备库上的数据不一致导致的,需要进行数据同步。
GTID
GTID(Global Transaction ID)是MySQL 5.6及以上版本中的一个特性,它是一个全局事务标识符,用于标识MySQL的事务。GTID由三个部分组成:source_id、transaction_id和sequence_number。
- source_id:表示MySQL实例的唯一标识符,通常是一个UUID;
- transaction_id:表示事务的唯一标识符,是一个整数,每个事务都有一个唯一的ID;
- sequence_number:表示事务在MySQL实例中的顺序号,是一个整数,每个事务的sequence_number都是递增的。
https://weread.qq.com/web/reader/4aa3250071a74c1d4aacadek2a3327002582a38a4a932bf?
GTID的格式如下:
source_id:transaction_id:sequence_number
例如,一个GTID的值可能是:
d1f2d04e-1b0b-11ec-8f18-0242ac110002:12345:1
其中,d1f2d04e-1b0b-11ec-8f18-0242ac110002是source_id,12345是transaction_id,1是sequence_number。