Рейтинг:0

Репликация Mariadb с несколькими источниками - таблица не существует

флаг om
Ror

Я настраиваю репликацию с несколькими источниками с серверами Mariadb 10.6. У меня есть 2 сервера mariadb с базами данных с одинаковым именем «база данных». Я хочу, чтобы эти два сервера реплицировали свои БД на одном подчиненном сервере, чтобы база данных master1 реплицировалась в database1, а база данных master2 реплицировалась в database2.

Вот конфигурации мастеров:

# Репликация
бревно
server_id=1 # 2 для master2
log-basename=master1 # master2 для master2
бинлог-формат = смешанный
gtid_domain_id=1 # 2 для master2

Вот конфигурация ведомого:

#Репликация

бревно
идентификатор_сервера=3
master1.replicate_rewrite_db="база данных->база данных1"
master2.replicate_rewrite_db="база данных->база данных2"

Я делаю резервную копию master1, выполняя mysqldump:

sudo mysqldump --master-data=2 -u root -p база данных > master1_test.sql

и импортировать его на раб.

Я использую эти команды в mariadb cli для запуска репликации:

остановить ведомый 'master1';
сброс ведомого 'master1';
ЗАМЕНИТЬ MASTER 'master1' НА MASTER_HOST='XXXX', MASTER_USER='replication', MASTER_PASSWORD='XXXXXXX', MASTER_PORT=3306, MASTER_LOG_FILE='master1-bin.000001', MASTER_LOG_POS=710, MASTER_CONNECT_RETRY=10, MASTER_USE_GTID = slave_pos;
УСТАНОВИТЬ ГЛОБАЛЬНЫЙ gtid_slave_pos = "1-1-2"
запустить ведомый 'master1';

MASTER_LOG_FILE, MASTER_LOG_POS и gtid_slave_pos берутся из файла дампа.

все работает нормально. Пробовал добавить новую таблицу в master1, реплицируется создание новой таблицы.

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

показать статус ведомого 'master1' \G;
Last_SQL_Error: Ошибка «Таблица «database.test» не существует» при запросе. База данных по умолчанию: «database1». Запрос: 'ВСТАВИТЬ В `базу данных`.`тест` (`тест`) ЗНАЧЕНИЯ ('1242')'

Он должен заменить базу данных на базу данных1.

флаг ua
Вы, вероятно, получите лучшие результаты на dba.stackexchange.com

Ответить или комментировать

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