16.4.2 Совместимость репликации между версиями MySQL
MySQL поддерживает репликацию из одной версии к следующей более новой. Например, вы можете выполнить репликацию с источника, работающего на MySQL 5.6, на реплику, работающую на MySQL 5.7, или с MySQL 5.7 на реплику MySQL 8.0 и так далее. Однако, при репликации со старого источника на новую реплику могут возникнуть сложности, если источник использует запросы или полагается на поведение, больше не поддерживаемое в версии MySQL, используемой на реплике. Например, имена внешних ключей, превышающие 64 символа, больше не поддерживаются начиная с MySQL 8.0.
Использование более двух версий MySQL не поддерживается в настройках репликации, включающих несколько источников, независимо от количества источников или реплик MySQL-серверов. Это ограничение относится не только к версиям релизов, но и к номерам версий в рамках одного выпуска. Например, если вы используете конфигурацию цепной или циклической репликации, вы не можете одновременно использовать MySQL 5.7.22, MySQL 5.7.23 и MySQL 5.7.24, хотя вы можете использовать любые две из этих версий вместе.
Сильно рекомендуется использовать последнюю доступную версию в рамках данного выпуска MySQL, так как возможности репликации (и другие) постоянно улучшаются. Также рекомендуется обновлять источники и реплики, использующие ранние версии выпуска MySQL, до GA (производственных) версий, когда последние становятся доступны для данного выпуска.
Репликация с более новых источников на более старые реплики может быть возможна, но обычно не поддерживается. Это обусловлено рядом факторов:
-
Изменения формата двоичного журнала. Формат двоичного журнала может меняться между основными выпусками. Хотя мы стремимся поддерживать обратную совместимость, это не всегда возможно.
Это также существенно влияет на обновление серверов репликации; для получения дополнительной информации см. Раздел 16.4.3, «Обновление топологии репликации».
Для получения дополнительной информации о репликации на основе строк, см. Раздел 16.2.1, «Форматы репликации».
-
Несовместимость SQL. Вы не можете выполнять репликацию с более нового источника на более старую реплику с использованием репликации на основе запросов, если реплицируемые запросы используют возможности SQL, доступные на источнике, но не на реплике.
Однако, если и источник, и реплика поддерживают репликацию на основе строк и нет операторов определения данных для репликации, которые зависят от возможностей SQL, имеющихся на источнике, но отсутствующих на реплике, вы можете использовать репликацию на основе строк для репликации эффектов операторов изменения данных, даже если операторы DDL, выполняемые на источнике, не поддерживаются на реплике.
Дополнительную информацию о возможных проблемах с репликацией см. в Разделе 16.4.1, «Возможности и проблемы репликации».
© 2025 Oracle
Licensed under the GPLv2 License.