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
'slave
2'
@
'%'
;
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 status\G; |
当Slave_IO_Runing,Slave_SQL_Running都显示yes时,主从复制配置成功。