docker下如何部署MySQL8基于GTID的主从复制
发布时间:2022-01-14 12:17:24 所属栏目:MySql教程 来源:互联网
导读:这篇文章给大家介绍docker下如何部署MySQL8基于GTID的主从复制,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 安装docker #yum install docker 添加docker镜像仓库 #vim /etc/docker/daemon.json { registry-mirrors: [https://dock
这篇文章给大家介绍docker下如何部署MySQL8基于GTID的主从复制,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 安装docker #yum install docker 添加docker镜像仓库 #vim /etc/docker/daemon.json { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] } 拉取mysql镜像 *# docker pull mysql 创建mysql容器 # docker run -dit --name lisamysql001 -p 33307:3307 -e MYSQLROOTPASSWORD=123456 mysql # docker run -dit --name lisamysql002 -p 33308:3308 -e MYSQLROOTPASSWORD=123456 mysql 进入mysql容器 # docker exec -it lisamysql001 /bin/bash # docker exec -it lisamysql002 /bin/bash 在mysql容器中登陆mysql,竟然还是mysql8.0版本呢。真香! 下面开始进入容器部署基于GTID的主从复制: 容器lisa_mysql001为主库,lisa_mysql002为从库 进入主库(lisa_mysql001)给docker容器安装vim(方便我修改my.cnf文件) #docker exec -it lisa_mysql001 /bin/bash #apt-get update #apt-get install vim -y 安装ifconfig的包,查看容器IP地址 #apt-get install net-tools -y 安装ping命令 # apt-get install inetutils-ping -y 主库(lisa_mysql001)的IP地址是:172.17.0.2 配置主库的my.cnf,添加下面内容 #cat /etc/mysql/my.cnf server-id=001 gtid-mode=on enforce-gtid-consistency=on log_bin = binlog 修改完主库的配置文件后,退出mysql容器,重启mysql *# docker restart lisamysql001 为从库建立同步账号 #mysql -uroot -p123456 mysql>create user 'repl'@'172.17.0.%' identified by '1225119'; mysql>grant replication slave on . to 'repl'@'172.17.0.%'; mysql>flush privileges; 查看主库的uuid和状态 mysql>show global variables like '%uuid%'; 从库配置成功后,测试主从复制能否同步。 从库配置 # docker exec -it lisamysql002 /bin/bash #apt-get update #apt-get install vim -y 安装ifconfig命令,查看容器IP地址 #apt-get install net-tools -y 安装ping命令 # apt-get install inetutils-ping -y 从库(lisa_mysql001)的IP地址是:172.17.0.3 测试能否和主库通信 # ping 172.17.0.2 配置从库的my.cnf,添加下面内容 server-id=002 gtid-mode=on enforce-gtid-consistency=on log-slave-updates = on 修改完从库的配置文件后,退出mysql容器,重启mysql *# docker restart lisamysql002 测试我们在主库建的账户能不能从从库登陆 *# mysql -urepl -h272.17.0.2 -p 配置从库指定主库 mysql> change master to master_host='172.17.0.2',master_user='repl',master_password='1225119'; mysql> start slave; mysql> show slave statusG 主库建了一个名字为songlisha的库后,从库接受到了。 关于docker下如何部署MySQL8基于GTID的主从复制就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。 (编辑:好传媒网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |