16.1.5.8 多源复制监视
要监视复制通道的状态,存在以下选项:
-
使用复制性能架构 table。这些 table 的第一列是
Channel_Name
。这使您可以基于Channel_Name
作为关键字编写复杂的查询。参见第 25.12.11 节,“性能架构复制 table”。 -
使用
SHOW SLAVE STATUS FOR CHANNEL channel
。默认情况下,如果不使用FOR CHANNEL channel
子句,此语句将显示所有通道的副本状态,每个通道一行。标识符Channel_name
作为结果集的一列添加。如果提供了FOR CHANNEL channel
子句,则结果仅显示命名复制通道的状态。
Note
SHOW VARIABLES语句不适用于多个复制通道。通过这些变量可获得的信息已迁移到复制性能 table。在具有多个通道的拓扑中使用SHOW VARIABLES语句仅显示默认通道的状态。
16.1.5.8.1 使用性能架构 table 监视通道
本节说明如何使用复制性能架构 table 来监视通道。您可以选择监视所有通道或现有通道的子集。
要监视所有通道的连接状态:
mysql> SELECT * FROM replication_connection_status\G;
*************************** 1. row ***************************
CHANNEL_NAME: source_1
GROUP_NAME:
SOURCE_UUID: 046e41f8-a223-11e4-a975-0811960cc264
THREAD_ID: 24
SERVICE_STATE: ON
COUNT_RECEIVED_HEARTBEATS: 0
LAST_HEARTBEAT_TIMESTAMP: 0000-00-00 00:00:00
RECEIVED_TRANSACTION_SET: 046e41f8-a223-11e4-a975-0811960cc264:4-37
LAST_ERROR_NUMBER: 0
LAST_ERROR_MESSAGE:
LAST_ERROR_TIMESTAMP: 0000-00-00 00:00:00
*************************** 2. row ***************************
CHANNEL_NAME: source_2
GROUP_NAME:
SOURCE_UUID: 7475e474-a223-11e4-a978-0811960cc264
THREAD_ID: 26
SERVICE_STATE: ON
COUNT_RECEIVED_HEARTBEATS: 0
LAST_HEARTBEAT_TIMESTAMP: 0000-00-00 00:00:00
RECEIVED_TRANSACTION_SET: 7475e474-a223-11e4-a978-0811960cc264:4-6
LAST_ERROR_NUMBER: 0
LAST_ERROR_MESSAGE:
LAST_ERROR_TIMESTAMP: 0000-00-00 00:00:00
2 rows in set (0.00 sec)
在上面的输出中,启用了两个通道,如CHANNEL_NAME
字段所示,它们分别称为source_1
和source_2
。
CHANNEL_NAME
字段的添加使您可以查询特定通道的性能架构 table。要监视命名通道的连接状态,请使用WHERE CHANNEL_NAME=channel
子句:
mysql> SELECT * FROM replication_connection_status WHERE CHANNEL_NAME='source_1'\G
*************************** 1. row ***************************
CHANNEL_NAME: source_1
GROUP_NAME:
SOURCE_UUID: 046e41f8-a223-11e4-a975-0811960cc264
THREAD_ID: 24
SERVICE_STATE: ON
COUNT_RECEIVED_HEARTBEATS: 0
LAST_HEARTBEAT_TIMESTAMP: 0000-00-00 00:00:00
RECEIVED_TRANSACTION_SET: 046e41f8-a223-11e4-a975-0811960cc264:4-37
LAST_ERROR_NUMBER: 0
LAST_ERROR_MESSAGE:
LAST_ERROR_TIMESTAMP: 0000-00-00 00:00:00
1 row in set (0.00 sec)
同样,WHERE CHANNEL_NAME=channel
子句可用于监视特定通道的其他复制性能架构 table。有关更多信息,请参见第 25.12.11 节,“性能架构复制 table”。