docker单节点部署mysql 5.6主从
程序员文章站
2022-03-27 08:36:04
...
#拉取mysql5.6镜像
docker pull mysql:5.6
#启动主节点,挂载配置文件和数据文件
docker run --name master -p 3308:3306 -e MYSQL_ROOT_PASSWORD=root -d -v /opt/docker/mysql/master/conf:/etc/mysql/ -v /opt/docker/mysql/master/data:/var/lib/mysql mysql:5.6
#启动从节点,挂载配置文件和数据文件
docker run --name slave1 -p 3309:3306 -e MYSQL_ROOT_PASSWORD=root -d -v /opt/docker/mysql/slave/conf:/etc/mysql/ -v /opt/docker/mysql/slave/data:/var/lib/mysql mysql:5.6
查看是否启动成功
#编辑修改主库上已经挂载到本地的my.cnf文件
vim /opt/docker/mysql/master/conf/my.cnf
[mysqld]
log-bin=mysql-bin
server-id=1
#在主库配置用于连接从节点用户
进入主库
GRANT REPLICATION SLAVE ON *.* TO 'root'@'%' identified by 'root';
show grants for 'root'@'%';
#编辑修改从库上已经挂载到本地的my.cnf文件
vim /opt/docker/mysql/slave/conf/my.cnf
[mysqld]
server-id=2
relay-log=relaylogs
登录从库
#在从库配置主库信息
CHANGE MASTER TO
MASTER_HOST='自己的IP地址',
MASTER_PORT=3308,
MASTER_USER='root',
MASTER_PASSWORD='root',
master_log_file = 'mysqld-bin.000001',
master_log_pos=3260;
START SLAVE;
#查看从库状态
show slave status \G;
双yes代表配置成功
#查看日志
docker logs mysql_slave1 -f
docker logs mysql__master -f
上一篇: 这么聪明的我是不会被套路的