Spec-Zone.ru › MySQL 8.4

19.1.5.8 Мониторинг репликации из нескольких источников

  • 19.1.5.8.1 Мониторинг каналов с использованием таблиц Performance Schema

Для мониторинга состояния каналов репликации доступны следующие варианты:

  • Использование таблиц репликации Performance Schema. Первый столбец этих таблиц — Channel_Name. Это позволяет выполнять сложные запросы, используя Channel_Name в качестве ключа. См. Раздел 29.12.11, «Таблицы Performance Schema для репликации».

  • Использование SHOW REPLICA STATUS FOR CHANNEL channel. По умолчанию, если не используется условие FOR CHANNEL channel, это утверждение отображает состояние реплики для всех каналов, по одной строке на канал. Идентификатор Channel_name добавляется в результирующий набор в качестве столбца. Если указано условие FOR CHANNEL channel, результаты покажут состояние только указанного канала репликации.

Примечание

Утверждение SHOW VARIABLES не работает с несколькими каналами репликации. Информация, доступная через эти переменные, была перенесена в таблицы производительности репликации. Использование утверждения SHOW VARIABLES в топологии с несколькими каналами показывает состояние только канала по умолчанию.

Коды и сообщения об ошибках, которые выдаются при включении репликации из нескольких источников, указывают канал, который сгенерировал ошибку.

19.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=channel может быть использовано для мониторинга других таблиц репликации Performance Schema для определенного канала. Дополнительную информацию см. в разделе 29.12.11, «Таблицы Performance Schema для репликации».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/replication-multi-source-monitoring.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API