8.7 Мониторинг кластера InnoDB
В этом разделе описывается, как использовать AdminAPI для мониторинга кластера InnoDB.
Использование Cluster.describe()
Cluster.describe() Чтобы получить информацию о структуре самого кластера InnoDB, используйте функцию : Cluster.describe()
mysql-js> cluster.describe();
{
"clusterName": "testCluster",
"defaultReplicaSet": {
"name": "default",
"topology": [
{
"address": "ic-1:3306",
"label": "ic-1:3306",
"role": "HA"
},
{
"address": "ic-2:3306",
"label": "ic-2:3306",
"role": "HA"
},
{
"address": "ic-3:3306",
"label": "ic-3:3306",
"role": "HA"
}
]
}
}
Вывод этой функции отображает структуру кластера InnoDB, включая всю конфигурационную информацию и т.д. Значения адреса, метки и роли соответствуют тем, которые описаны в Проверка состояния кластера с помощью . Cluster.status()
Проверка статуса кластера с Cluster.status()
Cluster.status()Объекты кластера предоставляют метод status(), который позволяет проверить, как работает кластер. Прежде чем вы сможете проверить статус InnoDB Cluster, вам необходимо получить ссылку на объект InnoDB Cluster, подключившись к любому из его экземпляров. Однако, если вы хотите внести изменения в конфигурацию кластера, вы должны подключиться к экземпляру типа "R/W". Выполнение status() извлекает статус кластера, основанный на представлении кластера, с которым знаком серверный экземпляр, к которому вы подключены, и выводит отчет о статусе.
Состояние экземпляра в кластере напрямую влияет на информацию, предоставленную в отчете о статусе. Поэтому убедитесь, что экземпляр, к которому вы подключены, имеет статус ONLINE.
Для получения информации о том, как работает InnoDB Cluster, используйте метод status() кластера:
mysql-js> var cluster = dba.getCluster()
mysql-js> cluster.status()
{
"clusterName": "testcluster",
"defaultReplicaSet": {
"name": "default",
"primary": "ic-1:3306",
"ssl": "REQUIRED",
"status": "OK",
"statusText": "Cluster is ONLINE and can tolerate up to ONE failure.",
"topology": {
"ic-1:3306": {
"address": "ic-1:3306",
"memberRole": "PRIMARY",
"mode": "R/W",
"readReplicas": {},
"replicationLag": "applier_queue_applied",
"role": "HA",
"status": "ONLINE"
"version": "8.0.30"
},
"ic-2:3306": {
"address": "ic-2:3306",
"memberRole": "SECONDARY",
"mode": "R/O",
"readReplicas": {},
"replicationLag": "applier_queue_applied",
"role": "HA",
"status": "ONLINE"
"version": "8.0.30"
},
"ic-3:3306": {
"address": "ic-3:3306",
"memberRole": "SECONDARY",
"mode": "R/O",
"readReplicas": {},
"replicationLag": "applier_queue_applied",
"role": "HA",
"status": "ONLINE"
"version": "8.0.30"
}
}
"topologyMode": "Single-Primary"
},
"groupInformationSourceMember": "mysql://icadmin@ic-1:3306"
}
Вывод предоставляет следующую информацию: Cluster.status()
clusterName: имя, назначенное этому кластеру во времяdba.createCluster().defaultReplicaSet: серверные экземпляры, принадлежащие InnoDB Cluster и содержащие набор данных.primary: отображается только при работе кластера в одно-главном режиме. Показывает адрес текущего первичного экземпляра. Если это поле не отображается, кластер работает в много-главном режиме.ssl: используются ли для кластера защищенные соединения. Показывается значенияREQUIREDилиDISABLED, в зависимости от того, как был настроен параметрmemberSslModeприcreateCluster()илиaddInstance(). Возвращаемое значение этого параметра соответствует значению переменной сервера в экземпляре. См. Раздел 8.6, «Защита InnoDB Cluster».-
status: Статус InnoDB Cluster. Статус описывает обеспечиваемую этим кластером высокодоступность. Статус может быть одним из следующих:OK: Кластер онлайн и может выдержать доnотказов. В кластере три или более участников, и они функционируют.OK_PARTIAL: Кластер онлайн и может выдержать доnотказов. Как минимум, три сервера-участника в кластере находятся в онлайн-состоянии Group Replication. Однако один или несколько серверов-участников в данный момент не участвуют в качестве активных участников кластера.OK_NO_TOLERANCE: Кластер не устойчив к отказам.OK_NO_TOLERANCE_PARTIAL: Кластер не устойчив к отказам. Один или два сервера-участника в кластере онлайн, но один или несколько серверов находятся в режиме оффлайн, восстановления, ошибки или недоступности. Кластер не обладает достаточной устойчивостью к отказам из-за недоступности некоторых участников.NO_QUORUM: Кластер не имеет кворума, что означает, что большинство серверов-участников группы репликации недоступны для согласования решения и не могут обрабатывать транзакции записи.OFFLINE: Все участники группы оффлайн.ERROR: В кластере нет онлайн-участников.UNREACHABLE: Нет подключения к онлайн-участникам.UNKNOWN: Нет подключения к онлайн-участникам.FENCED_WRITES: Кластер изолирован от трафика записи.
-
topology: Статус экземпляра MySQL Server. Статус может быть одним из следующих:Host name of instance: имя хоста экземпляра, например"localhost:3310".memberRoleроль участника, как сообщает плагин Group Replication, см. столбецMEMBER_ROLEтаблицы.-
mode: является ли сервер чтением-записью ("R/W") или только чтением ("R/O"). Это выводится из текущего состояния переменной в экземпляре и наличия кворума в кластере. В предыдущих версиях значение режима выводилось из того, выступал ли экземпляр в качестве первичного или вторичного экземпляра. Обычно, если экземпляр является первичным, режим равен "R/W", а если экземпляр является вторичным, режим равен "R/O". Все экземпляры в кластере, не имеющие видимого кворума, помечаются как "R/O", независимо от состояния переменной.ПримечаниеЕсли член
statusотличается отONLINE,modeсообщается какn/a. -
replicationLag: возвращает одно из следующих значений:-
Разница во времени между последней датой завершения транзакции и последней применённой датой транзакции в формате ЧЧ:ММ:СС.
Если используются несколько рабочих процессов, значение извлекается из рабочего процесса, выполняющего самую старую транзакцию.
null: подключение к репликации или SQL-поток не работает.applier_queue_applied: очередь применения применила все. То есть, если последняя транзакция в очереди и последняя примененная транзакция одинаковы, или транзакция применения равна 0.
-
role: какая функция выполняется этим экземпляром в кластере. В настоящее время только HA для обеспечения высокой доступности.-
status: Статус этого элемента кластера. Статус может быть одним из следующих:ONLINE: экземпляр онлайн и участвует в кластере.OFFLINE: экземпляр потерял соединение с другими экземплярами.RECOVERING: экземпляр пытается синхронизироваться с кластером, извлекая транзакции, необходимые ему перед тем, как он сможет стать онлайн-участником.UNREACHABLE: экземпляр потерял связь с кластером.-
ERROR: экземпляр столкнулся с ошибкой во время фазы восстановления или при применении транзакции.ВажноПосле того, как экземпляр переходит в состояние
ERROR, параметр устанавливается в значениеON. Чтобы выйти из состоянияERROR, необходимо вручную настроить экземпляр с . -
(MISSING): состояние экземпляра, который входит в конфигурированный кластер, но в настоящее время недоступен.ПримечаниеСостояние
MISSINGспецифично для InnoDB Cluster, это не состояние, генерируемое Group Replication. MySQL Shell использует это состояние для указания экземпляров, которые зарегистрированы в метаданных, но не могут быть найдены в живом представлении кластера.
groupInformationSourceMember: внутреннее соединение, используемое для получения информации о кластере, отображается как строка подключения, подобная URI. Обычно это соединение, первоначально используемое для создания кластера.
version: версия MySQL Server, работающая на экземпляре. См. Проверка версии MySQL на экземплярах для получения дополнительной информации.
Для отображения дополнительной информации о кластере используйте опцию extended. Опция extended поддерживает целочисленные или булевы значения. Для настройки дополнительной информации, предоставляемой , используйте следующие значения: Cluster.status({'extended':value})
0: отключает дополнительную информацию, значение по умолчанию
1: включает информацию о версии протокола Group Replication, имени группы, стеке связи, UUID членов кластера, ролях и состояниях членов кластера, как сообщается Group Replication, и список заблокированных системных переменных
2: включает информацию о транзакциях, обработанных соединением и процессором
3: включает более подробную статистику о репликации, выполняемой каждым членом кластера.
Установка extended с помощью булевых значений эквивалентна установке целочисленных значений 0 и 1.
При выполнении или опция Cluster.status({'extended':1})extended установлена в true, вывод включает:
-
следующие дополнительные атрибуты для объекта
defaultReplicaSet:-
GRProtocolVersion: версия протокола групповой репликации, используемая в кластере.ПодсказкаInnoDB Cluster автоматически управляет используемой версией протокола групповой репликации, см. InnoDB Cluster и протокол групповой репликации для получения дополнительной информации.
communicationStack: используемый кластером стек коммуникаций. Возможные значения:XCOMилиMYSQL. См. Раздел 8.5.9, «Настройка стека коммуникаций групповой репликации» для получения дополнительной информации.groupName: имя группы, UUID.groupViewChangeUuid: значение .groupViewId: текущий идентификатор представления для этой группы. Это значение берется из столбцаVIEW_IDтаблицы .-
paxosSingleLeader: отображает значение .ПримечаниеЭто доступно только в MySQL Server 8.0.31 и выше, поскольку MySQL Shell требует информации, предоставляемой
WRITE_CONSENSUS_SINGLE_LEADER_CAPABLEв таблице , которая была введена в MySQL 8.0.31.
-
-
следующие дополнительные атрибуты для каждого объекта объекта
topology:fenceSysVarsсписок, содержащий имена изолированных системных переменных, которые настроены AdminAPI. В настоящее время рассматриваются изолированные системные переменные , и . Системные переменные перечислены независимо от их значения.instanceErrorsдля каждого экземпляра, отображающая любую диагностическую информацию, которая может быть обнаружена для экземпляра. Например, если экземпляр является вторичным, а переменная не установлена вON, то отображается предупреждение. Эта информация может быть использована для устранения неполадок.memberIdUUID каждого члена кластера.memberStateсостояние участника, как сообщается плагином Group Replication, см. столбецMEMBER_STATEтаблицы .
Чтобы увидеть информацию о восстановлении и обычном вводе-выводе транзакций, статистике потоков-работчиков аппликатора и любых задержках; статистике координатора аппликатора, если включен параллельный аппликатор репликации; ошибках и другой информации от потоков-приемников и аппликаторов, используйте значение 2 или 3 для extended. При использовании этих значений открывается соединение с каждым экземпляром в кластере, чтобы можно было запрашивать дополнительную статистику, специфичную для экземпляра. Точная статистика, включенная в вывод, зависит от состояния и конфигурации экземпляра и версии сервера. Эта информация соответствует информации, показанной в таблице , см. описания соответствующих столбцов для получения дополнительной информации. Экземпляры, которые являются ONLINE, имеют раздел transactions, включенный в вывод. Экземпляры, которые являются RECOVERING, имеют раздел recovery, включенный в вывод. При установке extended в 2, в любом случае, эти разделы могут содержать следующее:
appliedCount: см.COUNT_TRANSACTIONS_REMOTE_APPLIEDcheckedCount: см.COUNT_TRANSACTIONS_CHECKEDcommittedAllMembers: см.TRANSACTIONS_COMMITTED_ALL_MEMBERSconflictsDetectedCount: см.COUNT_CONFLICTS_DETECTEDinApplierQueueCount: см.COUNT_TRANSACTIONS_REMOTE_IN_APPLIER_QUEUEinQueueCount: см.COUNT_TRANSACTIONS_IN_QUEUElastConflictFree: см.LAST_CONFLICT_FREE_TRANSACTIONproposedCount: см.COUNT_TRANSACTIONS_LOCAL_PROPOSEDrollbackCount: см.COUNT_TRANSACTIONS_LOCAL_ROLLBACK
При установке extended в 3, раздел connection показывает информацию из таблицы .
Раздел currentlyQueueing содержит информацию о транзакциях, находящихся в настоящее время в очереди:
immediateCommitTimestamp: см.QUEUEING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPimmediateCommitToNowTime: см.QUEUEING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPминусNOW()originalCommitTimestamp: см.QUEUEING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPoriginalCommitToNowTime: см.QUEUEING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPминусNOW()startTimestamp: см.QUEUEING_TRANSACTION_START_QUEUE_TIMESTAMPtransaction: см.QUEUEING_TRANSACTIONlastHeartbeatTimestamp: см.LAST_HEARTBEAT_TIMESTAMP
Раздел lastQueued содержит информацию о последней транзакции, поставленной в очередь:
endTimestamp: см.LAST_QUEUED_TRANSACTION_END_QUEUE_TIMESTAMPimmediateCommitTimestamp: см.LAST_QUEUED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPimmediateCommitToEndTime:LAST_QUEUED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPминусNOW()originalCommitTimestamp: см.LAST_QUEUED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPoriginalCommitToEndTime:LAST_QUEUED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPминусNOW()queueTime:LAST_QUEUED_TRANSACTION_END_QUEUE_TIMESTAMPминусLAST_QUEUED_TRANSACTION_START_QUEUE_TIMESTAMPstartTimestamp: см.LAST_QUEUED_TRANSACTION_START_QUEUE_TIMESTAMPtransaction: см.LAST_QUEUED_TRANSACTIONreceivedHeartbeats: см.COUNT_RECEIVED_HEARTBEATSreceivedTransactionSet: см.RECEIVED_TRANSACTION_SETthreadId: см.THREAD_ID
Экземпляры, использующие многопоточную реплику, имеют раздел workers, который содержит информацию о потоках-работниках и соответствует информации, показанной в таблице .
Раздел lastApplied показывает следующую информацию о последней транзакции, примененной работником:
applyTime: см.LAST_APPLIED_TRANSACTION_END_APPLY_TIMESTAMPминусLAST_APPLIED_TRANSACTION_START_APPLY_TIMESTAMPendTimestamp: см.LAST_APPLIED_TRANSACTION_END_APPLY_TIMESTAMPimmediateCommitTimestamp: см.LAST_APPLIED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPimmediateCommitToEndTime: см.LAST_APPLIED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPминусNOW()originalCommitTimestamp: см.LAST_APPLIED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPoriginalCommitToEndTime: см.LAST_APPLIED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPминусNOW()startTimestamp: см.LAST_APPLIED_TRANSACTION_START_APPLY_TIMESTAMPtransaction: см.LAST_APPLIED_TRANSACTION
Раздел currentlyApplying показывает следующую информацию о транзакции, которая в настоящее время применяется работником:
immediateCommitTimestamp: см.APPLYING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPimmediateCommitToNowTime: см.APPLYING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPминусNOW()originalCommitTimestamp: см.APPLYING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPoriginalCommitToNowTime: см.APPLYING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPминусNOW()startTimestamp: см.APPLYING_TRANSACTION_START_APPLY_TIMESTAMPtransaction: см.APPLYING_TRANSACTION
Раздел lastProcessed содержит следующую информацию о последней транзакции, обработанной работником:
bufferTime:LAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMPминусLAST_PROCESSED_TRANSACTION_START_BUFFER_TIMESTAMPendTimestamp: см.LAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMPimmediateCommitTimestamp: см.LAST_PROCESSED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPimmediateCommitToEndTime:LAST_PROCESSED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPминусLAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMPoriginalCommitTimestamp: см.LAST_PROCESSED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPoriginalCommitToEndTime:LAST_PROCESSED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPминусLAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMPstartTimestamp: см.LAST_PROCESSED_TRANSACTION_START_BUFFER_TIMESTAMPtransaction: см.LAST_PROCESSED_TRANSACTION
Если включен параллельный аппликатор репликации, то количество объектов в массиве работников в transactions или recovery соответствует количеству настроенных работников, и включается дополнительный объект координатора. Показанная информация соответствует информации в таблице . Объект может содержать:
Раздел currentlyProcessing содержит следующую информацию о транзакции, обрабатываемой работником:
immediateCommitTimestamp: см.PROCESSING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPimmediateCommitToNowTime:PROCESSING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMPминусNOW()originalCommitTimestamp: см.PROCESSING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPoriginalCommitToNowTime:PROCESSING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMPминусNOW()startTimestamp: см.PROCESSING_TRANSACTION_START_BUFFER_TIMESTAMPtransaction: см.PROCESSING_TRANSACTION
worker объекты содержат следующую информацию, если в таблице была обнаружена ошибка:
lastErrno: см.LAST_ERROR_NUMBERlastError: см.LAST_ERROR_MESSAGElastErrorTimestamp: см.LAST_ERROR_TIMESTAMP
connection объекты содержат следующую информацию, если в таблице была обнаружена ошибка:
lastErrno: см.LAST_ERROR_NUMBERlastError: см.LAST_ERROR_MESSAGElastErrorTimestamp: см.LAST_ERROR_TIMESTAMP
coordinator объекты содержат следующую информацию, если в таблице была обнаружена ошибка:
lastErrno: см.LAST_ERROR_NUMBERlastError: см.LAST_ERROR_MESSAGElastErrorTimestamp: см.LAST_ERROR_TIMESTAMP
Мониторинг операций восстановления
Вывод команды показывает информацию о ходе операций восстановления для экземпляров в состоянии Cluster.status()RECOVERING. Информация отображается для экземпляров, восстанавливающихся с помощью MySQL Clone или инкрементального восстановления. Следите за этими полями:
Поле
recoveryStatusTextсодержит информацию о типе используемого восстановления. При работе с MySQL Clone в поле отображается «“Клонирование в процессе”». При инкрементальном восстановлении в поле отображается «“Распределенное восстановление в процессе”».-
При использовании MySQL Clone поле
recoveryсодержит словарь со следующими полями:cloneStartTime: Отметка времени начала процесса клонированияcloneState: Состояние процесса клонированияcurrentStage: Текущий этап процесса клонированияcurrentStageProgress: Прогресс текущего этапа в процентахcurrentStageState: Состояние текущего этапа
Пример вывода
, сокращенный для краткости:Cluster.status()... "recovery": { "cloneStartTime": "2019-07-15 12:50:22.730", "cloneState": "In Progress", "currentStage": "FILE COPY", "currentStageProgress": 61.726837675213865, "currentStageState": "In Progress" }, "recoveryStatusText": "Cloning in progress", ... -
При использовании инкрементального восстановления и установке параметра
extendedна 1 или больше, полеrecoveryсодержит словарь со следующими полями:state: Состояние каналаgroup_replication_recovery-
recoveryChannel: Отображается для экземпляров, выполняющих инкрементальное восстановление или в которых статус канала восстановления не отключен. Инкрементальное восстановление использует поток получателя для получения транзакций из источника и поток применителя для применения полученных транзакций в экземпляре. Предоставляет следующую информацию:applierQueuedTransactionSetSize: Количество транзакций, в настоящее время находящихся в очереди и ожидающих применения.applierState: Текущее состояние репликации применителя, либоON, либоOFF.-
applierStatus: Текущий статус потоков применителя. Агрегирование состояний, показанных в полеapplierThreadState. Может быть одним из следующих:APPLIED_ALL: нет транзакций в очереди, ожидающих примененияAPPLYING: транзакции применяютсяON: поток подключен и нет транзакций в очередиERROR: произошла ошибка при применении транзакцийOFF: поток применителя отключен
applierThreadState: Текущее состояние потоков применителя. Предоставляет подробную информацию о том, что именно делает поток применителя. Для получения дополнительной информации, см. .-
receiverStatus: Текущий статус потока получателя. Агрегирование состояний, показанных в полеreceiverThreadState. Может быть одним из следующих:ON: поток получателя успешно подключился и готов к приемуCONNECTING: поток получателя подключается к источникуERROR: произошла ошибка при получении транзакцийOFF: поток получателя корректно отключился
receiverThreadState: Текущее состояние потока получателя. Предоставляет подробную информацию о том, что именно делает поток получателя. Для получения дополнительной информации, см. .source: Источник транзакций, которые применяются.
Пример вывода
, сокращенный для краткости:Cluster.status()... "recovery": { "recoveryChannel": { "applierQueuedTransactionSetSize": 2284, "applierStatus": "APPLYING", "applierThreadState": "Opening tables", "receiverStatus": "ON", "receiverThreadState": "Queueing master event to the relay log", "source": "ic-2:3306" }, "state": "ON" }, ...
Протокол InnoDB Cluster и Group Replication
Group Replication имеет понятие протокола связи для группы, см. для получения дополнительной информации. Версия протокола связи Group Replication обычно должна управляться явно и устанавливаться в соответствии со старейшей версией MySQL Server, которую вы хотите поддерживать в группе. Однако InnoDB Cluster автоматически и прозрачно управляет версиями протоколов связи своих членов всякий раз, когда топология кластера изменяется с помощью операций AdminAPI. Кластер всегда использует самую последнюю версию протокола связи, поддерживаемую всеми экземплярами, которые в настоящее время являются частью кластера или присоединяются к нему.
При добавлении, удалении или повторном присоединении экземпляра к кластеру, а также при выполнении операции ресканирования или перезапуска кластера, версия протокола связи автоматически устанавливается на версию, поддерживаемую экземпляром, который сейчас имеет самую раннюю версию MySQL Server.
При выполнении поэтапного обновления путем удаления экземпляров из кластера, их обновления и повторного добавления в кластер, версия протокола связи автоматически обновляется, когда последний оставшийся экземпляр со старой версией MySQL Server удаляется из кластера перед его обновлением.
Чтобы увидеть используемую версию протокола связи в кластере, используйте функцию с включенным параметром Cluster.status()extended. Версия протокола связи возвращается в поле GRProtocolVersion, при условии, что кластер имеет кворум и ни один член кластера недоступен.
Проверка версии MySQL на экземплярах
Следующие операции могут сообщать информацию о версии MySQL Server, работающей на экземпляре:
Cluster.status()Cluster.describe()Cluster.rescan()
Поведение зависит от версии MySQL Server сеанса объекта Cluster.
-
Cluster.status()Если выполняются следующие требования, для каждого объекта JSON экземпляра объекта
topologyвозвращается строкаversion:Текущий сеанс объекта
Clusterверсии 8.0.11 или выше.Текущий сеанс объекта
Clusterработает с версией ранее 8.0.11, но параметрextendedустановлен в 3.
Например, на экземпляре, работающем с версией 8.0.16:
"topology": { "ic-1:3306": { "address": "ic-1:3306", "mode": "R/W", "readReplicas": {}, "role": "HA", "status": "ONLINE", "version": "8.0.16" } -
Cluster.describe()Если текущий сеанс объекта
Clusterверсии 8.0.11 или выше, для каждого объекта JSON экземпляра объектаtopologyвозвращается строкаversion.Например, на экземпляре, работающем с версией 8.0.16:
"topology": [ { "address": "ic-1:3306", "label": "ic-1:3306", "role": "HA", "version": "8.0.16" } ] -
Cluster.rescan()Если текущий сеанс объекта
Clusterверсии 8.0.11 или выше, и операцияобнаруживает экземпляры, которые не принадлежат кластеру, для каждого объекта JSON экземпляра объектаCluster.rescan()newlyDiscoveredInstanceвозвращается строкаversion.Например, на экземпляре, работающем с версией 8.0.16:
"newlyDiscoveredInstances": [ { "host": "ic-4:3306", "member_id": "82a67a06-2ba3-11e9-8cfc-3c6aa7197deb", "name": null, "version": "8.0.16" } ]
© 2025 Oracle
Licensed under the GPLv2 License.