docker mysql读写分离

首先启动master mysql容器

docker run -d -p 3306:3306 --name master -e MYSQL_ROOT_PASSWORD=good mysql

然后登陆到master mysql容器:

docker exec -it master bin/sh

修改master容器下的/etc/mysql/my.cnf文件,加上如下两行:

[mysql1d]
log-bin=master-bin
server-id=1

保存并退出master容器,然后重启master容器:

docker restart master

重新进入master容器:

docker exec -it master bin/sh

然后登陆mysql:

mysql -u root -p
查看master日志状态:

show master status;

记住日志名和日志位置。


接下来配置slave容器

启动slave容器:

docker run -d -p 3307:3306 --name slave -e MYSQL_ROOT_PASSWORD=hello mysql
然后登陆到slave容器:

docker exec -it slave
修改slave容器的/etc/mysql/my.cnf,加上一下两行:

[mysql1d]
log-bin=slave-bin
server-id=2


保存并退出slave容器,然后重启slave容器,使得配置生效:

docker restart slave

重新进入slave容器

docker exec -it slave bin/sh
登陆到mysql:

mysql -u root -p
然后连接到master:

change master to master_host='30.5.112.73', master_user='root', master_password='good', master_log_file='master-bin.000001', master_log_file=120;


注意这里的master_host不要写127.0.0.1或者localhost这种。

启动slave:

start slave;



到这里,master和slave容器里的mysql已经连接起来了,在master上做的所有操作都会同步到slave容器里;而在slave里做的操作不会同步到master。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值