16.1.5.8 Мониторинг репликации с несколькими источниками
Для мониторинга состояния каналов репликации доступны следующие варианты:
Использование таблиц Performance Schema для репликации. Первым столбцом в этих таблицах является
Channel_Name. Это позволяет создавать сложные запросы, используяChannel_Nameв качестве ключа. Смотрите раздел 25.12.11, «Таблицы Performance Schema для репликации».Использование
SHOW SLAVE STATUS FOR CHANNEL. По умолчанию, если не используется ключевое словоchannelFOR CHANNEL, это утверждение показывает состояние реплики для всех каналов с одной строкой на канал. ИдентификаторchannelChannel_nameдобавляется в качестве столбца в наборе результатов. Если указано ключевое словоFOR CHANNEL, результаты показывают состояние только указанного канала репликации.channel
Утверждение SHOW VARIABLES не работает с несколькими каналами репликации. Информация, которая была доступна через эти переменные, была перенесена в таблицы производительности репликации. Использование утверждения SHOW VARIABLES в топологии с несколькими каналами отображает состояние только по умолчанию.
16.1.5.8.1 Мониторинг каналов с помощью таблиц Performance Schema
Этот раздел объясняет, как использовать таблицы Performance Schema для репликации для мониторинга каналов. Вы можете выбрать мониторинг всех каналов или подмножества существующих каналов.
Для мониторинга состояния соединения всех каналов:
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 позволяет запросить таблицы Performance Schema для конкретного канала. Для мониторинга состояния соединения указанного канала используйте ключевое слово 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= можно использовать для мониторинга других таблиц Performance Schema для репликации для определенного канала. Дополнительную информацию см. в разделе 25.12.11, «Таблицы Performance Schema для репликации». channel
© 2025 Oracle
Licensed under the GPLv2 License.