29.12.11.7 复制应用程序状态表(按协调器)
对于多线程副本,复制使用多个工作线程和一个协调线程来管理它们,而这个表显示了协调线程的状态。对于单线程副本,这个表为空。对于多线程副本,replication_applier_status_by_worker
表显示了工作线程的状态。这张表提供了关于最后一个事务被缓冲到工作线程队列中的信息,以及它当前正在缓冲的事务。开始时间戳指的是当这个线程从中继日志读取第一个事件时,开始缓冲到工作线程队列,而结束时间戳指的是最后一个事件完成缓冲到工作线程队列时的时间。
表 replication_applier_status_by_coordinator
有以下列:
-
CHANNEL_NAME
显示的复制通道名称。总是有一个默认的复制通道,还可以添加更多的复制通道。请参阅第19.2.2节,“复制通道”以获取更多信息。
-
THREAD_ID
SQL/协调线程的ID。
-
SERVICE_STATE
ON
(线程存在并且是活动或空闲状态)或OFF
(线程不再存在)。 -
LAST_ERROR_NUMBER
,LAST_ERROR_MESSAGE
最近一个错误导致SQL/协调线程停止时的错误号和错误消息。错误号为0且消息为空字符串表示“无错误”。如果
LAST_ERROR_MESSAGE
值不为空,则错误值也出现在副本的错误日志中。执行
RESET BINARY LOGS AND GTIDS
或RESET REPLICA
重置这些列显示的值。表中
LAST_ERROR_NUMBER
和LAST_ERROR_MESSAGE
列中的所有错误代码和消息都对应于服务器错误参考中列出的值。 -
LAST_ERROR_TIMESTAMP
一个在
'YYYY-MM-DD hh:mm:ss[.fraction]'
格式的时间戳,显示了最近一个SQL/协调错误发生的时间。 -
LAST_PROCESSED_TRANSACTION
协调器正在处理的最后一个事务的全局事务ID(GTID)。
-
LAST_PROCESSED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP
一个在
'YYYY-MM-DD hh:mm:ss[.fraction]'
格式的时间戳,显示了协调器正在处理的事务在原始源上提交的时间。 -
LAST_PROCESSED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP
一个在
'YYYY-MM-DD hh:mm:ss[.fraction]'
格式的时间戳,显示了协调器正在处理的事务在紧急源上提交的时间。 -
LAST_PROCESSED_TRANSACTION_START_BUFFER_TIMESTAMP
一个在
'YYYY-MM-DD hh:mm:ss[.fraction]'
格式的时间戳,显示了协调器线程开始将最后一个事务写入到工作线程缓冲区时的时间。 -
LAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMP
一个在
'YYYY-MM-DD hh:mm:ss[.fraction]'
格式的时间戳,显示了协调器线程将最后一个事务写入到工作线程缓冲区时结束的时间。 -
PROCESSING_TRANSACTION
协调器线程正在处理的事务的全局事务ID(GTID)。
-
PROCESSING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP
一个在
'YYYY-MM-DD hh:mm:ss[.fraction]'
格式的时间戳,显示了协调器正在处理的事务在原始源上提交的时间。 -
处理事务即时提交时间戳
一个以 '
YYYY-MM-DD hh:mm:ss
[.小数部分
]' 格式显示的时间戳,表示当前处理的事务在即时源上被提交的时间。 -
处理事务开始缓冲时间戳
一个以 '
YYYY-MM-DD hh:mm:ss
[.小数部分
]' 格式显示的时间戳,表示协调器线程开始将当前处理的事务写入到工作线程缓冲区的时间。
当性能模式被禁用时,不会收集本地时间信息,所以显示缓冲事务的开始和结束时间戳的字段都是零。
replication_applier_status_by_coordinator 表有以下索引:
-
主键在 (
CHANNEL_NAME
) 上 -
在 (
THREAD_ID
) 上的索引
以下表格显示了replication_applier_status_by_coordinator 列与SHOW REPLICA STATUS 列之间的对应关系。
replication_applier_status_by_coordinator Column |
SHOW REPLICA STATUS Column |
---|---|
THREAD_ID |
无 |
SERVICE_STATE |
Replica_SQL_Running |
LAST_ERROR_NUMBER |
Last_SQL_Errno |
LAST_ERROR_MESSAGE |
Last_SQL_Error |
LAST_ERROR_TIMESTAMP |
Last_SQL_Error_Timestamp |