docker容器搭建mysql8.0主从服务器

第一次搭建docker主从,备注下,方法参考网上一些资源写的:

首先,机器上安装docker服务器

然后先在宿主机上创建主从待挂载目录,master、slave,然后分别在 各自目录下创建config、data目录,再在config目录下创建文件mysqld.cnf,最终结构如下:

docker容器搭建mysql8.0主从服务器_第1张图片

docker pull 下载mysql 8的镜像,下下来查看镜像:

接下来编辑主从数据库配置mysqld.cnf,注意红框里面的属性:

1、主数据库:

docker容器搭建mysql8.0主从服务器_第2张图片

2、从数据库

docker容器搭建mysql8.0主从服务器_第3张图片

然后分别执行:

docker run --name mysql_master -p 3301:3306 --privileged=true -v /docker/mysql/master/config/mysqld.cnf:/etc/mysql/my.cnf -v /docker/mysql/master/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.17

docker run -p 3302:3306 --name mysql_slave --privileged=true -v /docker/mysql/slave/config/mysqld.cnf:/etc/mysql/my.cnf -v /docker/mysql/slave/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.17

 

接着,通过连接主服务器,

执行创建用户及授权命令:

create user 'slave'@'%' identified with mysql_native_password by '123456';

grant replication slave, replication client on *.*@'%';

执行show master status;命令

查看主服务器ip

然后连接从服务器,执行命令:

change master to master_host='172.17.0.3', master_user='slave', master_password='123456', master_port=3306, master_log_file='mysql-bin.000004', master_log_pos= 155, master_connect_retry=30;

然后执行start slave;

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

docker容器搭建mysql8.0主从服务器_第4张图片

主要看slave_iq_running跟slave_sql_running值,都是yes代表成功;

 

 

你可能感兴趣的:(docker,容器,docker,mysql)