MySQL Replication - несколько мастеров (разные d/bs) реплицируются на один подчиненный сервер

У меня настроена и работает MySQL Replication:

База данных A (Сервер 1 в качестве главного) -> База данных A (Сервер Z, выступающий в качестве подчиненного)

Теперь я хочу использовать тот же подчиненный сервер (Z), чтобы он был ведомым для двух других баз данных; совершенно разные базы данных (например, B и C), а не другие копии, если база данных A.

Я следовал этому простому руководству: https://www.digitalocean.com/community/tutorials/how-to-set-up-master-slave-replication-in-mysql

Но когда дело доходит до добавления второй базы данных на ведомый сервер в /etc/my.cnf, я не вижу, как можно иметь более одного профиля.

По сути, я думаю, что мне нужны оба этих блока в my.cnf на подчиненном сервере, но это будет не так просто, верно?

log_error="/var/log/mysql/error.log"
server-id=2
log_bin="/var/log/mysql/mysql-bin.log"
binlog_do_db=database_a

log_error="/var/log/mysql/error.log"
server-id=3
log_bin="/var/log/mysql/mysql-bin.log"
binlog_do_db=database_b

Возможно ли это, или мне буквально нужен новый подчиненный сервер для каждой уникальной базы данных, которую я хочу реплицировать?

Можно ли на подчиненном сервере иметь определенные файлы conf для каждой базы данных, например, /etc/databasea.cnf и /etc/databaseb.cnf, чтобы я мог указывать различные параметры для каждой базы данных?

заранее спасибо

1 ответ

Решение

Репликация из нескольких источников доступна только в MySQL, начиная с 5.7.6 или MariaDB, начиная с 10.0.1.

Multi-Source Replication позволяет подчиненному устройству репликации получать транзакции из нескольких источников одновременно. Репликация с несколькими источниками может использоваться для резервного копирования нескольких серверов на один сервер, объединения сегментов таблиц и консолидации данных с нескольких серверов на один сервер. Репликация из нескольких источников не реализует никакого обнаружения или разрешения конфликтов при применении транзакций, и эти задачи оставляются приложению, если это необходимо. В топологии репликации с несколькими источниками ведомое устройство создает канал репликации для каждого главного устройства, от которого оно должно получать транзакции.

Источник:

Другие вопросы по тегам