mariadb 主从复制

2.设置主服务器和从服务器mariadb配置

主服务器my.cnf文件中加入如下配置

1
2
server-id               = 1
log_bin       = log-bin=master-bin

从服务器my.cnf文件中配置

1
server-id               = 2

3.查看主服务器是否开启log_bin日志

进入主服务器容器

1
docker exec -ti -u root mariadb_master   bash 

进入mariadb数据库

1
mysql -uroot -proot

查看log_bin是否开启,执行“show variables like '%log_bin%';”

授权用户读取bin日志

create user 'slave2'@'%' identified by 'slave2';
grant replication slave on *.* to 'slave2'@'%';
flush privileges;
   

查看主服务器BIN日志的信息

1
show master status;

记录file和Position信息,用于配置从服务器。

进入从服务器

docker exec -ti -u root mariadb_slave   bash

,执行如下命令。

1
2
3
4
5
6
7
CHANGE MASTER TO
MASTER_HOST='172.17.0.3', --主服务器端口
MASTER_PORT=3306 , --主服务器对外暴露的端口
MASTER_USER='slave1',
MASTER_PASSWORD='slave1' ,
MASTER_LOG_FILE='mariadb-bin.000002',
MASTER_LOG_POS=2889;
master_connect_retry=30;

查看是否配置成功

1
show slave statusG;

当Slave_IO_Runing,Slave_SQL_Running都显示yes时,主从复制配置成功。

参考https://www.cnblogs.com/xxrl-c/p/11073657.html

原文地址:https://www.cnblogs.com/smallfa/p/11275562.html