Переход с MariaDB Galera Cluster 5.5 на MariaDB Galera Cluster 10.0
Выполнение поэтапного обновления
Следующие шаги можно использовать для выполнения поэтапного обновления с MariaDB Galera Cluster 5.5 на MariaDB Galera Cluster 10.0. При поэтапном обновлении каждый узел обновляется индивидуально, поэтому кластер всегда работает. С точки зрения приложения простоя нет.
Сначала, прежде чем начать:
- Сначала ознакомьтесь с Переходом с MariaDB 5.5 на MariaDB 10.0, чтобы узнать, что изменилось между основными версиями.
- Проверьте, были ли изменены или удалены системные переменные или параметры. Убедитесь, что конфигурация вашего сервера совместима с новой версией MariaDB перед обновлением.
- Проверьте, были ли изменения в репликации в новой версии MariaDB, которые могли бы вызвать проблемы, когда в кластере есть обновленные и не обновленные узлы.
- Проверьте, были ли добавлены новые функции в новую версию MariaDB. Если новая функция в новой версии MariaDB не может быть реплицирована в старой версии MariaDB, не используйте эту функцию, пока все узлы кластера не будут обновлены до новой версии MariaDB.
- Далее, убедитесь, что номера версий Galera совместимы.
- Если вы обновляетесь с последней версии MariaDB Galera Cluster 5.5 на MariaDB Galera Cluster 10.0, версии будут совместимы. Последние версии MariaDB Galera Cluster 5.5 и MariaDB Galera Cluster 10.0 используют Galera 3 (т. е. версии поставщика wsrep Galera 25.3.x), поэтому они должны быть совместимы.
- Если вы используете более старую версию MariaDB Galera Cluster 5.5, которая по-прежнему использует Galera 2 (т. е. версии поставщика wsrep Galera 25.2.x), рекомендуется сначала обновить её до последней версии MariaDB Galera Cluster 5.5, которая использует Galera 3 (т. е. версии поставщика wsrep Galera 25.3.x).
- См. Что такое MariaDB Galera Cluster?: Версии поставщика wsrep Galera для получения информации о том, какие версии MariaDB используют какие версии поставщика wsrep Galera.
- В идеале, вы хотите иметь достаточно большой gcache, чтобы избежать передачи моментального снимка состояния (SST) во время поэтапного обновления. Размер gcache можно настроить, установив
gcache.sizeНапример:
wsrep_provider_options="gcache.size=2G"
Перед обновлением лучше всего создать резервную копию вашей базы данных. Это всегда хорошая идея перед обновлением. Мы рекомендуем Percona XtraBackup.
Затем для каждого узла выполните следующие шаги:
- Измените конфигурацию хранилища, чтобы менеджер пакетов системы установил MariaDB 10.1. Например,
- В дистрибутивах Linux, подобных Debian, Ubuntu и другим, см. Обновление хранилища MariaDB APT для новой основной версии для получения дополнительной информации.
- В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и другим, см. Обновление хранилища MariaDB YUM для новой основной версии для получения дополнительной информации.
- В дистрибутивах Linux, подобных SLES, OpenSUSE и другим, см. Обновление хранилища MariaDB ZYpp для новой основной версии для получения дополнительной информации.
- Если вы используете прокси-сервер балансировки нагрузки, такой как MaxScale или HAProxy, убедитесь, что сервер удален из пула, чтобы он не получал новых соединений.
- Установите
innodb_fast_shutdownна0. Его можно изменять динамически с помощьюSET GLOBAL. Например:
SET GLOBAL innodb_fast_shutdown=0; - Остановить MariaDB.
- Удалите старую версию MariaDB и поставщика Galera wsrep.
- В дистрибутивах Linux, подобных Debian, Ubuntu и другим, выполните следующее:
sudo apt-get remove mariadb-galera-server galera - В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и другим, выполните следующее:
sudo yum remove MariaDB-Galera-server galera - В дистрибутивах Linux, подобных SLES, OpenSUSE и другим, выполните следующее:
sudo zypper remove MariaDB-Galera-server galera
- В дистрибутивах Linux, подобных Debian, Ubuntu и другим, выполните следующее:
- Установите новую версию MariaDB и поставщика Galera wsrep.
- В дистрибутивах Linux, подобных Debian, Ubuntu и другим, см. Установка пакетов MariaDB с помощью APT для получения дополнительной информации.
- В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и другим, см. Установка пакетов MariaDB с помощью YUM для получения дополнительной информации.
- В дистрибутивах Linux, подобных SLES, OpenSUSE и другим, см. Установка пакетов MariaDB с помощью ZYpp для получения дополнительной информации.
- Внесите необходимые изменения в параметры конфигурации в файлах опций, например,
my.cnf. Это включает удаление системных переменных или параметров, которые больше не поддерживаются. - Запустить MariaDB.
- Выполните
mysql_upgradeс параметром--skip-write-binlog.-
mysql_upgradeвыполняет две вещи:- Убеждается, что системные таблицы в базе данных
mysqlполностью совместимы с новой версией. - Выполняет очень быструю проверку всех таблиц и помечает их как совместимые с новой версией MariaDB.
- Убеждается, что системные таблицы в базе данных
-
После завершения этого процесса для одного узла перейдите к следующему узлу.
Обратите внимание, что при обновлении поставщика Galera wsrep иногда может измениться версия протокола Galera. Поставщик wsrep Galera не должен начинать использовать новую версию протокола до тех пор, пока все узлы кластера не будут обновлены до новой версии, поэтому обычно это не проблема во время поэтапного обновления. Однако это может вызвать проблемы, если вы перезапустите неустановленный узел в кластере, где остальные узлы уже обновлены.
:
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/upgrading-from-mariadb-galera-cluster-55-to-mariadb-galera-cluster-100/