创建容器:
mysql主1
docker run -d \ --name mysql-master1 \ -e mysql_root_password=123456 \ -v /etc/mysql:/var/lib/mysql \ -p 3306:3306 \ mysql:8.01 \ --server-id=1 \ --log-bin=mysql-bin \ --gtid-mode=on \ --enforce-gtid-consistency=on
mysql主2
docker run -d \ --name mysql-master2 \ -e mysql_root_password=123456 \ -v /etc/mysql:/var/lib/mysql \ -p 3306:3306 \ mysql:8.01 \ --server-id=2 \ --log-bin=mysql-bin \ --gtid-mode=on \ --enforce-gtid-consistency=on
创建角色:
使用navcait操作,两个主mysql使用一样的命令,
create user 'replica'@'%' identified by 'replica_password'; grant replication slave on *.* to 'replica'@'%'; flush privileges;
配置mysql:
show master status;
change master to master_host='192.168.110.71', master_port=3309, master_user='replica', master_password='replica_password', master_log_file='mysql-bin.000006', -- 使用第二个主数据库的file值 master_log_pos=1420, -- 使用第二个主数据库的position值 master_connect_retry=60, get_master_public_key=1; start slave;
此处为从数据库配置主数据库的信息,因此需要配置对方的信息,这里的host、post、切换为自己对应的,用户名和密码如果直接复制的上方用户创建的话,则无需修改,file和pos对应上方查询到的信息,不要随便填写,按照上方的来
查询结果:
show slave status
两个参数必须要为yes,不能为其他的任何,如果为其他的,则自行查询解决方案,两边都配通了之后就可以互通数据了
到此这篇关于dokcer部署双主mysql的详细步骤的文章就介绍到这了,更多相关dokcer部署双主mysql内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论