Spec-Zone.ru › MySQL 9.2

20.1.1.1 Репликация источника с репликой

Традиционная репликация MySQL Репликация предоставляет простой подход к репликации от источника к реплике. Источник — это первичный сервер, а есть один или несколько реплик, которые являются вторичными. Источник применяет транзакции, фиксирует их, а затем (позднее, таким образом, асинхронно) отправляет их репликам для повторного выполнения (в репликации на основе операторов) или применения (в репликации на основе строк). Это система без общего ресурса, где по умолчанию все серверы имеют полную копию данных.

Рисунок 20.1 Асинхронная репликация MySQL

A transaction received by the source is executed, written to the binary log, then committed, and a response is sent to the client application. The record from the binary log is sent to the relay logs on Replica 1 and Replica 2 before the commit takes place on the source. On each of the replicas, the transaction is applied, written to the replica's binary log, and committed. The commit on the source and the commits on the replicas are all independent and asynchronous.

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

Рисунок 20.2 Полусинхронная репликация MySQL

A transaction received by the source is executed and written to the binary log. The record from the binary log is sent to the relay logs on Replica 1 and Replica 2. The source then waits for an acknowledgement from the replicas. When both of the replicas have returned the acknowledgement, the source commits the transaction, and a response is sent to the client application. After each replica has returned its acknowledgement, it applies the transaction, writes it to the binary log, and commits it. The commit on the source depends on the acknowledgement from the replicas, but the commits on the replicas are independent from each other and from the commit on the source.

На двух рисунках представлена диаграмма классического асинхронного протокола репликации MySQL (а также его полусинхронной разновидности). Стрелки между различными экземплярами представляют сообщения, обменивающиеся между серверами или сообщения, обменивающиеся между серверами и клиентским приложением.

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

Spec-Zone.ru

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