Перейти к содержанию

Стратегии обновления

Существуют различные стратегии, которые следует учитывать при обновлении 8.0 до 8.4.

Обновление «на месте»

Обновление на 8.4 не позволяет откатиться. Стратегия обновления «на месте» не рекомендуется, и ее следует использовать только в крайнем случае.

Обновление «на месте» включает в себя завершение работы сервера 8.0 и замену бинарных файлов или пакетов сервера новыми. На этом этапе новую версию сервера можно запустить в существующем каталоге данных. Обратите внимание, что сервер должен быть настроен на медленное завершение работы, т.е. должна быть установлена системная переменная innodb_fast_shutdown=0 перед выключением.

Особенности обновления «на месте»:

  • Меньше дополнительных затрат на инфраструктуру по сравнению с новой средой, но узлы необходимо тестировать.

  • Обновление большого кластера может выполняться постепенно в течение нескольких недель с паузами между обновлениями узла кластера, предназначенных для чтения.

  • Требуется аварийное переключение производственного трафика, и для минимального времени простоя необходимо иметь хорошие инструменты высокой доступности.

Если вы используете XA-транзакции с InnoDB, запуск XA RECOVER перед обновлением проверяет наличие незафиксированных XA-транзакций. Если эта команда возвращает непустой результат, зафиксируйте или откатите XA-транзакции, выполнив команды XA COMMIT или XA ROLLBACK.

Новое окружение с переключением

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

На новом оборудовании устанавливается целевая версия MySQL. После этого настраивается новое окружение и восстанавливаются производственные данные. Помните, что вы можете использовать утилиту pt-config-diff из пакета Percona Toolkit для сверки конфигураций MySQL.

Затем настраивается репликация из текущего окружения во вновь созданное.

Во время переключения с текущего окружения на новое вся запись в текущее окружение остановливается, и трафик приложения необходимо перенаправить в новый окружение. Переключение можно выполнить с помощью виртуального IP-адреса или вручную перенаправив само приложение. Как только записи будут получены в новой окружении, вы окажетесь в ситуации невозможности возврата, и на этом этапе можно отключить старое окружение.

Особенности обновления с помощью нового окружения:

  • Этот подход требует дополнительных затрат на инфраструктуру, поскольку необходимо построить совершенно новое окружение.

  • Возможность апгрейда одновременно и ОС, и СУБД.

  • Позволяет легко обновлять оборудование.

  • Требуется только одно окно переключения.


Последнее обновление: 2024-04-30