25.12.11.6 Replication_Applier_status_by_workertable

如果副本不是多线程的,则此 table 显示应用程序线程的状态。否则,副本将使用多个工作线程和一个协调程序线程来 Management 它们,并且此 table 显示了工作线程的状态。对于多线程副本,replication_applier_status_by_coordinatortable 显示了协调线程的状态。

replication_applier_status_by_workertable 具有以下列:

该行正在显示的复制通道。始终有一个默认的复制通道,并且可以添加更多的复制通道。有关更多信息,请参见第 16.2.3 节“复制通道”

工作程序标识符(与mysql.slave_worker_infotable 中的id列相同的值)。在STOP SLAVE之后,THREAD_ID列变为NULL,但保留WORKER_ID值。

工作线程标识符。

ON(线程存在并且处于活动或空闲状态)或OFF(线程不再存在)。

Worker 最后一次见过的 Transaction。Worker 不一定必须应用此事务,因为它可能仍在进行中。

如果gtid_mode系统变量值为OFF,则此列为ANONYMOUS,table 示事务不具有全局事务标识符(GTID),并且仅由文件和位置标识。

如果gtid_modeON,则列值定义如下:

SELECT GTID_SUBSET(LAST_SEEN_TRANSACTION, @@GLOBAL.GTID_EXECUTED)
FROM performance_schema.replication_applier_status_by_worker;

如果该语句返回零,则说明该事务尚未提交,这是因为它仍在处理中,或者是因为工作线程在处理时已停止。如果该语句返回非零值,则 table 示事务已提交。

导致工作线程停止的最新错误的错误号和错误消息。错误号 0 和空字符串的消息 table 示“无错误”。如果LAST_ERROR_MESSAGE值不为空,则错误值也会出现在副本的错误日志中。

发出RESET MASTERRESET SLAVE会重置这些列中显示的值。

LAST_ERROR_NUMBERLAST_ERROR_MESSAGE列中显示的所有错误代码和消息均与第 B.3.1 节“服务器错误消息参考”中列出的错误值相对应。

replication_applier_status_by_workertable 不允许TRUNCATE TABLE

下 table 显示了replication_applier_status_by_worker列和显示从站状态列之间的对应关系。

replication_applier_status_by_worker SHOW SLAVE STATUS
WORKER_ID None
THREAD_ID None
SERVICE_STATE None
LAST_SEEN_TRANSACTION None
LAST_ERROR_NUMBER Last_SQL_Errno
LAST_ERROR_MESSAGE Last_SQL_Error
LAST_ERROR_TIMESTAMP Last_SQL_Error_Timestamp
首页