В чем разница между главным двоичным журналом и ведомым двоичным журналом в MySQL? Как я могу получить одинаковые двоичные журналы на обоих серверах?

У меня есть главный и подчиненный серверы. Репликация сделана. Теперь я выполнил следующие шаги на обоих серверах.

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |      1608 |
+------------------+-----------+

1 rows in set (0.00 sec)

mysql> flush binary logs;

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |      1608 |
| mysql-bin.000002 |       154 |
+------------------+-----------+
2 rows in set (0.00 sec)

После этого я запустил запрос вставки в моем мастере. Затем проверил мои основные двоичные журналы. размер увеличен. Но нет никаких изменений в раб. Но я хочу увеличить столько же в подчиненном бинарном журнале, сколько в master. Причина в том, что я хочу получить инкрементное резервное копирование от подчиненного с использованием двоичных журналов.

1 ответ

Решение

Вам нужно включить log-slave-updates (которая по умолчанию отключена до MySQL 8.0.3), чтобы включить изменения, полученные от мастера:

Обычно ведомый не записывает обновления, полученные от главного сервера, в свой двоичный журнал. Эта опция заставляет ведомое устройство записывать обновления, выполненные его потоком SQL, в его собственный двоичный журнал. Чтобы эта опция имела какой-либо эффект, ведомое устройство также должно быть запущено с параметром --log-bin, чтобы включить двоичное ведение журнала. --log-slave-updates используется, когда вы хотите объединить серверы репликации.

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