7.8.4 Пересканирование кластера
Если вы внесли изменения в конфигурацию кластера за пределами команд AdminAPI, например, вручную изменив конфигурацию экземпляра для решения проблем с конфигурацией или после потери экземпляра, вам необходимо обновить метаданные InnoDB Cluster, чтобы они соответствовали текущей конфигурации экземпляров. В этих случаях используйте операцию , которая позволяет обновить метаданные InnoDB Cluster вручную или с помощью интерактивного мастера. Операция Cluster.rescan() может обнаружить новые активные экземпляры, которые не зарегистрированы в метаданных, и добавить их, или устаревшие экземпляры (больше не активные), всё ещё зарегистрированные в метаданных, и удалить их. Вы можете автоматически обновить метаданные в зависимости от найденных экземпляров командой, или вы можете указать список адресов экземпляров для добавления в метаданные или удаления из метаданных. Вы также можете обновить режим топологии, хранящийся в метаданных, например, после изменения с режима одиночного первичного сервера на режим многопервичного сервера вне AdminAPI.Cluster.rescan()
устанавливается в максимальное значение в кластерах реплики. Исходное значение сохраняется в схеме метаданных и восстанавливается в случае переключения или отказа.Cluster.rescan()
Синтаксис команды: . Словарь Cluster.rescan([options])options поддерживает следующее:
-
addInstances: список с данными подключения новых активных экземпляров для добавления в метаданные, или “auto” для автоматического добавления недостающих экземпляров в метаданные. Значение “auto” нечувствительно к регистру.Экземпляры, указанные в списке, добавляются в метаданные без запроса подтверждения.
В интерактивном режиме вас попросят подтвердить добавление вновь обнаруженных экземпляров, которые не включены в опцию
addInstances.В режиме без взаимодействия вновь обнаруженные экземпляры, которые не включены в опцию
addInstances, будут отображены в выводе, но вас не попросят их добавлять.
-
removeInstances: список с данными подключения устаревших экземпляров для удаления из метаданных, или “auto” для автоматического удаления устаревших экземпляров из метаданных.Экземпляры, указанные в списке, удаляются из метаданных без запроса подтверждения.
В интерактивном режиме вас попросят подтвердить удаление устаревших экземпляров, которые не включены в опцию
removeInstances.В режиме без взаимодействия устаревшие экземпляры, которые не включены в опцию
removeInstances, будут отображены в выводе, но вас не попросят их удалять.
-
updateViewChangeUuid: логическое значение, используемое для указания, должна ли быть сгенерирована и установлена переменная системы для экземпляров кластера.ПримечаниеЭто не требуется для кластеров, работающих под MySQL Server 8.3.0 или выше.
Эта системная переменная предоставляет альтернативный UUID для событий изменения представления, генерируемых группой. Для экземпляров MySQL Server версии 8.0.27 и выше, для кластера InnoDB, входящего в InnoDB ClusterSet, переменная системы необходима и должна быть установлена в одинаковое значение на всех серверах-участниках кластера. Кластер InnoDB, созданный с помощью команды
dba.createCluster(), получает значение, сгенерированное и установленное для системной переменной на всех серверах-участниках. Кластер InnoDB, созданный до MySQL Shell 8.0.27, может не иметь системной переменной, но процесс создания InnoDB ClusterSet проверяет это и завершается с предупреждением, если она отсутствует.По умолчанию,
updateViewChangeUuidустановлено вfalse, и если системная переменная не найдена или не совпадает ни на одном из экземпляров, возвращается сообщение об ошибке, чтобы сообщить, что вы должны установить значение для системной переменной и перезапустить кластер InnoDB. Если вы установитеupdateViewChangeUuidвtrue, операция пересканирования генерирует и устанавливает значение для на всех серверах-участниках, после чего вам нужно перезапустить кластер, чтобы внедрить изменения. Командаавтоматически генерирует и устанавливает значение переменной системы аналогично тому, как если быCluster.rescan()trueбыла установлена, с последующей необходимостью перезапуска кластера для внедрения изменений. После перезапуска кластера вы можете повторить процесс создания InnoDB ClusterSet. -
upgradeCommProtocol: логическое значение, используемое для указания, следует ли обновлять версию протокола связи Group Replication (true) или нет (false) до версии, поддерживаемой экземпляром в кластере, имеющим наименьшую версию MySQL. По умолчанию версия протокола связи не обновляется (false). Операции AdminAPI, вызывающие изменение топологии, возвращают сообщение, если версию протокола связи можно обновить, и вы можете использовать этот параметр для выполнения обновления в подходящее время. Желательно обновить до самой последней доступной версии протокола связи Group Replication, чтобы поддерживать новейшие функции, такие как фрагментация сообщений для больших транзакций. Для получения дополнительной информации см. .Если значение равно
true, то версия протокола связи Group Replication обновляется до версии, поддерживаемой экземпляром в кластере с наименьшей версией MySQL.Если значение равно
false, то версия протокола связи Group Replication не обновляется.
© 2025 Oracle
Licensed under the GPLv2 License.