docker mysql sock_docker 容器模式下部署mysql 主从复制

本文档详细介绍了如何在Docker环境下配置MySQL主从复制。通过两台主机部署,分别设置为主和从数据库,调整配置文件,设置server-id,并在容器中启动MySQL服务。接着在主MySQL容器中创建复制用户并授权,获取主节点状态。在从节点上配置主节点信息并启动复制,最后检查复制状态以确保设置成功。
摘要由CSDN通过智能技术生成

1.计划用两台host来部署,分别部署一台 mysql,一主一从,

2.配置好主从mysql配置文件,更改文件名即可

[client]

port = 3306

socket = /var/run/mysqld/mysqld.sock

[mysqld_safe]

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

nice = 0

[mysqld]

user = mysql

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

port = 3306

basedir = /usr

datadir = /var/lib/mysql

tmpdir = /tmp

lc-messages-dir = /usr/share/mysql

explicit_defaults_for_timestamp

log-bin = mysql-bin

server-id = 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

symbolic-links=0

!includedir /etc/mysql/conf.d/

!includedir /etc/mysql/mysql.conf.d/

主与从server-id = 1 修改为server-id = 2

3.启动 mysql 容器,两个主机的容器都要启动,端口分别为3306,3307

docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql-master -v /root/docker-mysql-data/mysql-master:/var/lib/mysql -v /root/docker-mysql-data/my-master.cnf:/etc/mysql/my.cnf -p 3306:3306 mysql:5.6

测试:mysql -uroot -p123456 -h127.0.0.1登录本机的mysql容器内

4.进入主mysql 容器

创建一个用户,并授予权限,replication slave ,

grant replication slave on *.* to ‘slave’@’%’ identified by ‘123456’; flush privileges;

show master status;

5. 从mysql容器配置

change master to master_host='172.17.0.2',master_user='slave',master_password='slave',

master_log_file='mysql-bin.000004',master_log_pos=1160,master_port=3306;

mysql> start slave;

mysql> show slave status \G;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值