半同步复制的插件公开了一些状态变量,使您能够监控其操作。要检查状态变量的当前值,请使用 SHOW STATUS
mysql> SHOW STATUS LIKE 'Rpl_semi_sync%';
所有 Rpl_semi_sync_
状态变量都可以在 第 7.1.10 节,“服务器状态变量” 中找到。以下是一些示例:xxx
连接到源服务器的半同步副本的数量。
源服务器上半同步复制当前是否处于运行状态。如果插件已启用并且未发生提交确认,则值为 1。如果插件未启用或源已回退到异步复制(由于提交确认超时),则为 0。
未被副本成功确认的提交数量。
被副本成功确认的提交数量。
副本上半同步复制当前是否处于运行状态。如果插件已启用并且复制 I/O(接收器)线程正在运行,则为 1,否则为 0。
当源由于提交阻塞超时或副本赶上来而在异步复制和半同步复制之间切换时,它会相应地设置 Rpl_semi_sync_source_status
状态变量的值。源上从半同步复制到异步复制的自动回退意味着,即使半同步复制实际上在此时不可用,源侧的 rpl_semi_sync_source_enabled
系统变量的值也可能为 1。您可以监控 Rpl_semi_sync_source_status
状态变量以确定源当前使用的是异步复制还是半同步复制。