docker配置mysql主从同步

2019-08-12  本文已影响0人  随风来的月

首先拉取docker里myql镜像,如果没有安装docker,百度看下,比较简单。

docker pull mysql:5.7

然后启动容器,我这里分别启动了两个容器:

master(主):

docker run -p 3339:3306 --name mysql-master -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

slave(从):

docker run -p 3340:3306 --name mysql-slaver-e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

docker ps -a 查看正在运行的容器

配置主服务的相关配置:

docker exec -it  0b78 bash

进入容器内部:修改mysql的配置

vim /etc/mysql/my.cnf

添加一下内容:

server-id=100 

log-bin=mysql-bin

修改之后保存,重启mysql服务

重启之后进入mysql 添加数据同步用户:

CREATE USER 'slave'@'%' IDENTIFIED BY '123456';

GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'%';

slave服务mysql配置,进入my.cnf

server-id=101 

log-bin=mysql-slave-bin 

relay_log=edu-mysql-relay-bin

修改之后重启。

查看master mysql状态

show master status;

其中file 和position在下面的配置中需要:

在slave mysql中

执行:

change master to master_host='172.17.0.6', master_user='slave', master_password='123456', master_port=3306, master_log_file='mysql-bin.000003', master_log_pos= 154, master_connect_retry=30;

其中 host 为master的地址,master_log_file 为上图的file,master_log_pos 为上图的position;

slave查看状态:show slave status\G;

配置成功~

master新建库 master:

刷新slave:

上一篇下一篇

猜你喜欢

热点阅读