Репликация MySQL

Общая инфа

Общая инфа

Как работает?

https://highload.today/kak-nastroit-mysql-master-slave-replikatsiyu-3f/

Через жопу

Репликация настраивается так: надо указать файл, который надо реплицировать и позицию, с которой надо реплицировать данные. 

Общая инфа

async sync

https://dev.mysql.com/doc/refman/8.0/en/binary-log-formats.html 

https://learn.percona.com/hubfs/Manuals/Percona_XtraDB_Cluster/PXC_8.0/PerconaXtraDBCluster-8.0.20-11.3.pdf 

Общая инфа

bench

sysbench \
--db-driver=mysql \
--mysql-user=sbtest_user \
--mysql_password=password \
--mysql-db=sbtest \
--mysql-host=192.168.66.5 \
--mysql-port=3306 \
--tables=16 \
--table-size=10000 \
/usr/share/sysbench/oltp_read_write.lua prepare

 

Настраиваем Master-Slave

Настраиваем Master-Slave

Настраиваем

На мастере

В конфиге указываем:

# выбираем ID сервера, произвольное число, лучше начинать с 1
server-id = 1
# путь к бинарному логу
log_bin = /var/log/mysql/mysql-bin.log
# название Вашей базы данных, которая будет реплицироваться
binlog_do_db = newdatabase
Перезапускаем СУБД.
Создаем юзера для репликации
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Проверяем статус мастера
SHOW MASTER STATUS;
Делаем дамп базы, выгружаем его

На слейв

После чего конфигурируем слейв:

# ID Слейва, удобно выбирать следующим числом после Мастера
server-id = 2
# Путь к relay логу
relay-log = /var/log/mysql/mysql-relay-bin.log
# Путь к bin логу на Мастере
log_bin = /var/log/mysql/mysql-bin.log
# База данных для репликации
binlog_do_db = newdatabase

И настраиваем соединение

CHANGE MASTER TO MASTER_HOST='10.10.0.1', MASTER_USER='slave_user', MASTER_PASSWORD='password',
MASTER_LOG_FILE = 'mysql-bin.000001', MASTER_LOG_POS = 107;

START SLAVE;

 

 

 

 

Настраиваем Master-Master

Настраиваем Master-Master

Master-Master

https://highload.today/kak-nastroit-mysql-master-master-replikatsiyu-3f/

Настраиваем Master-Master

Инструкция

По аналогии с Master-Slave, только репликацию Slave настраиваем еще и на основном мастере.