7.5.6 Настройка параллельного приложения репликации
Экземпляры поддерживают и включают потоки параллельного приложения репликации, иногда называемые многопоточной репликой. Использование нескольких потоков приложения реплики параллельно улучшает пропускную способность как приложения репликации, так и инкрементального восстановления.
Это означает, что на экземплярах, работающих под 8.0.23 и более поздними версиями, должны быть настроены следующие системные переменные:
-
Примечание
Эта системная переменная устарела в MySQL 8.0.35 и 8.2.0 и была удалена в MySQL 8.4.0. Начиная с MySQL 8.4.0, сервер использует поведение
WRITESETпо умолчанию, и оно больше не устанавливается MySQL Shell.
По умолчанию число потоков приложения (настраивается системной переменной) равно 4.
При обновлении кластера, который работал с версией MySQL сервера и MySQL Shell ранее 8.0.23, экземпляры не настраиваются на использование параллельного приложения репликации. Если параллельное приложение не включено, вывод операции отображает сообщение в поле Cluster.status()instanceErrors, например:
...
"instanceErrors": [
"NOTE: The required parallel-appliers settings are not enabled on
the instance. Use dba.configureInstance() to fix it."
...
В этой ситуации необходимо перенастроить ваши экземпляры, чтобы они использовали параллельное приложение репликации. Для каждого экземпляра, принадлежащего кластеру InnoDB, обновите конфигурацию, выполнив команду dba.configureInstance(instance). Обратите внимание, что обычно dba.configureInstance() используется перед добавлением экземпляра в кластер, но в этом особом случае нет необходимости удалять экземпляр, и изменение конфигурации выполняется в режиме онлайн.
Информация о параллельном приложении репликации отображается в выводе операции . Например, если параллельное приложение репликации включено, то раздел вывода Cluster.status(extended=1)topology для экземпляра показывает количество потоков в applierWorkerThreads. Системные переменные, настроенные для параллельного приложения репликации, отображаются в выводе операции .Cluster.options()
Системная переменная сервера slave_parallel_workers (устаревшая в MySQL 8.0.30) удалена в 8.3.0 и не может быть установлена или считана опцией MySQL Shell applierWorkerThreads для MySQL Server 8.3.0 или более поздних версий.
Для более ранних версий MySQL Server поведение MySQL Shell не изменяется, и applierWorkerThreads по-прежнему доступно.
Вы можете настроить количество потоков, которые экземпляр использует для параллельного приложения репликации, с помощью опции applierWorkerThreads, которая по умолчанию устанавливает 4 потока. Опция принимает целые числа в диапазоне от 0 до 1024 и может использоваться только с операциями dba.configureInstance() и dba.configureReplicaSetInstance(). Например, чтобы использовать 8 потоков, выполните:
mysql-js> dba.configureInstance(instance, {applierWorkerThreads: 8, restart: true})
Изменение количества потоков, используемых параллельным приложением репликации, происходит только после перезапуска экземпляра и его повторного подключения к кластеру.
Чтобы отключить параллельное приложение репликации, установите опцию applierWorkerThreads в значение 0.
© 2025 Oracle
Licensed under the GPLv2 License.