region23
@region23
веб-разработчик

Как оптимальнее всего настроить Master-Slave GTID-репликацию в MySQL?

Настраиваю gtid-репликацию в MySQL. И на мастере и на слэйве mysql 5.7
Информации в сети по gtid-репликации очень мало и вся она однотипная, доки mysql тоже не дают ответа на вопрос "как настроить оптимальную репликацию с помощью gtid".

Проблема в том, что папка с бинлогами растет очень быстро (ОЧЕНЬ БЫСТРО!) и слэйв не успевает синхронизироваться, отставание только увеличивается. Что я делаю не так? Может какие-то таблицы надо поставить в игнор?

Бэкап снимаю с мастера на слэйв с помощью Percona Xtrabackup.

Master my.cnf
[mysqld]
server-id = 1
binlog-format = row
gtid_mode=ON
enforce-gtid-consistency=ON
log-slave-updates
log_bin = /var/log/mysql/mysql-bin.log
performance_schema_max_digest_length = 8192
max_digest_length = 8192
max_binlog_size= 500M
expire_logs_days = 4
sync_binlog = 1
innodb_flush_log_at_trx_commit = 1
key_buffer_size             = 16M
innodb_flush_method         = O_DIRECT
max_connections             = 200
innodb_temp_data_file_path=ibtmp1:12M:autoextend:max:5G


Slave my.cnf
server-id = 2
binlog-format = row
gtid_mode=ON
enforce-gtid-consistency=ON
relay-log = /var/log/mysql/mysql-relay-bin.log
log_bin = /var/log/mysql/mysql-bin.log
skip_slave_start
log_slave_updates = 1 
read_only = ON
innodb_file_per_table = ON
innodb_buffer_pool_size = 3G
max_binlog_size = 500M
max_relay_log_size = 500M
relay_log_space_limit = 5G
relay_log_recovery = ON
expire_logs_days = 4
slave-parallel-workers = 0
innodb_temp_data_file_path=ibtmp1:12M:autoextend:max:5G


В одной из статей видел пример, где на мастере в игнор репликации добавили следующие системные таблицы. Правильно ли так делать и если нет, то чем это грозит? Может ли так быстро расти размер бинлогов из-за этих системных таблиц?
replicate-ignore-db=information_schema
replicate-ignore-db=mysql
replicate-ignore-db=performance_schema
binlog-ignore-db = information_schema
binlog-ignore-db = mysql
binlog-ignore-db = performance_schema


Также нигде не видел, чтобы при gtid-репликации формат бинлогов был mixed, везде только raw.
  • Вопрос задан
  • 430 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vitaly_il1
DevOps Consulting
слэйв не успевает синхронизироваться, отставание только увеличивается.

А вообще репликация стартовала?
Если да, то все правильно.
Остается только вопрос со скоростью. Два вопроса: slave не слабее мастера? сеть нормальная?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы