10bet网址
MySQL 8.0 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr)- 41.6Mb
PDF (A4)- 41.7Mb
Man Pages (TGZ)- 262.1Kb
Man Pages (Zip)- 372.2Kb
Info (Gzip)- 4.0Mb
Info (Zip)- 4.0Mb
Excerpts from this Manual

17.1.5.8 Monitoring Multi-Source Replication

To monitor the status of replication channels the following options exist:

  • Using the replication Performance Schema tables. The first column of these tables isChannel_Name. This enables you to write complex queries based onChannel_Nameas a key. SeeSection 27.12.11, “Performance Schema Replication Tables”.

  • UsingSHOW REPLICA | SLAVE STATUS FOR CHANNELchannel. By default, if theFOR CHANNELchannelclause is not used, this statement shows the replica status for all channels with one row per channel. The identifierChannel_nameis added as a column in the result set. If aFOR CHANNELchannelclause is provided, the results show the status of only the named replication channel.

Note

TheSHOW VARIABLESstatement does not work with multiple replication channels. The information that was available through these variables has been migrated to the replication performance tables. Using aSHOW VARIABLESstatement in a topology with multiple channels shows the status of only the default channel.

The error codes and messages that are issued when multi-source replication is enabled specify the channel that generated the error.

17.1.5.8.1 Monitoring Channels Using Performance Schema Tables

This section explains how to use the replication Performance Schema tables to monitor channels. You can choose to monitor all channels, or a subset of the existing channels.

监控所有通道的连接状态:

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)

In the above output there are two channels enabled, and as shown by theCHANNEL_NAMEfield they are calledsource_1andsource_2.

The addition of theCHANNEL_NAMEfield enables you to query the Performance Schema tables for a specific channel. To monitor the connection status of a named channel, use aWHERE CHANNEL_NAME=channelclause:

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)

Similarly, theWHERE CHANNEL_NAME=channelclause can be used to monitor the other replication Performance Schema tables for a specific channel. For more information, seeSection 27.12.11, “Performance Schema Replication Tables”.