Spec-Zone.ru › MySQL 8.4

19.1.3 Репликация с использованием глобальных идентификаторов транзакций

  • 19.1.3.1 Формат и хранение GTID
  • 19.1.3.2 Жизненный цикл GTID
  • 19.1.3.3 Автоматическое позиционирование GTID
  • 19.1.3.4 Настройка репликации с использованием GTID
  • 19.1.3.5 Использование GTID для переключения и масштабирования
  • 19.1.3.6 Репликация из источника без GTID на репликатор с GTID
  • 19.1.3.7 Ограничения репликации с GTID
  • 19.1.3.8 Примеры хранимых функций для работы с GTID

В данном разделе описывается репликация транзакций с использованием глобальных идентификаторов транзакций (GTID). При использовании GTID каждая транзакция может быть идентифицирована и отслежена по мере её подтверждения на исходном сервере и применению на всех репликах. Это означает, что при запуске новой реплики или переключении на новый источник не нужно ссылаться на файлы журналов или позиции в этих файлах, что значительно упрощает эти задачи. Поскольку репликация на основе GTID полностью основана на транзакциях, легко определить, согласованы ли источник и реплики; если все транзакции, подтверждённые на источнике, также подтверждены на реплике, согласованность между ними гарантируется. Вы можете использовать репликацию на основе инструкций или строк с GTID (см. Раздел 19.2.1, «Форматы репликации»); однако для достижения наилучших результатов рекомендуется использовать формат на основе строк.

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

В этом разделе рассматриваются следующие темы:

  • Как определяются и создаются GTID, и как они представляются в сервере MySQL (см. Раздел 19.1.3.1, «Формат и хранение GTID»).

  • Жизненный цикл GTID (см. Раздел 19.1.3.2, «Жизненный цикл GTID»).

  • Функция автоматического позиционирования для синхронизации реплики и источника, использующих GTID (см. Раздел 19.1.3.3, «Автоматическое позиционирование GTID»).

  • Общая процедура настройки и запуска репликации на основе GTID (см. Раздел 19.1.3.4, «Настройка репликации с использованием GTIDs»).

  • Предлагаемые методы обеспечения новых серверов репликации при использовании GTID (см. Раздел 19.1.3.5, «Использование GTID для переключения и масштабирования»).

  • Ограничения, о которых следует знать при использовании репликации на основе GTID (см. Раздел 19.1.3.7, «Ограничения репликации с GTIDs»).

  • Хранимые функции, которые вы можете использовать для работы с GTID (см. Раздел 19.1.3.8, «Примеры хранимых функций для работы с GTID»).

Сведения об опциях и переменных сервера MySQL, относящихся к репликации на основе GTID, см. в Разделе 19.1.6.5, «Переменные системы глобальных идентификаторов транзакций». См. также Раздел 14.18.2, «Функции, используемые с глобальными идентификаторами транзакций (GTID)», который описывает поддерживаемые SQL-функции MySQL 8.4 для работы с GTID.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/replication-gtids.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API