docker安装mysql,配置主从架构

1、拉取镜像:

docker pull mysql:5.7.28

2、创建文件夹:(主库mysql-master,从库mysql-slave)

mkdir mysql-master
cd mysql-master
mkdir {conf,data,logs}

3、修改my.conf配置文件,主库端口10000,从库10001

主库my.cnf配置:开启binlog

[mysqld]

server-id=1

#开启binlog
log-bin=master-bin
log-bin-index=master-bin.index
skip-name-resolve

# 设置连接端口
port=10000

#服务端使用的字符集默认为UTF8
character-set-server=utf8
collation-server=utf8_general_ci

#允许最大连接数
max_connections=151


[client]
default-character-set=utf8

 从库my.cnf配置:开启中继日志relay-log

[mysqld]

server-id=2
# 设置端口
port=10001
# 设置服务端字符集UTF8
character-set-server=utf8
collation-server=utf8_general_ci
# 设置最大连接数
max_connections=151

# 开启中继日志
relay-log=slave-relay-bin
relay-log-index=slave-relay-bin.index

# 打开从服务二级制日志
log-bin=mysql-bin
# 使得更新的数据写进二进制日志中
log-slave-updates=1


[client]
default-character-set=utf8

4、启动容器

主库:

docker run --name mysql-master -p 10000:10000 -v /bdl/docker/mysql-master/conf:/etc/mysql/conf.d -v /bdl/docker/mysql-master/logs:/var/log/mysql -v /bdl/docker/mysql-master/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.28

从库:

docker run --name mysql-slave -p 10001:10001 -v /bdl/docker/mysql-slave/conf:/etc/mysql/conf.d -v /bdl/docker/mysql-slave/logs:/var/log/mysql -v /bdl/docker/mysql-slave/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.28

5、配置

主库:

# 进入mysql容器内部
docker exec -it mysql-master /bin/bash
# 登录mysql
mysql -uroot -p
# 授权
grant replication slave on *.* to 'root'@'%';
flush privileges;
# 查看主节点同步状态
show master status \G;

show master status;  记录此处File名称及Position位置,后续作为依据配置从库

 mysql-master/data/目录下文件

从库: 

# 进入mysql容器内部
docker exec -it mysql-slave /bin/bash
# 登录mysql
mysql -uroot -p
# 设置主同步节点
CHANGE MASTER TO 
MASTER_HOST='116.62.207.266',
MASTER_PORT=10000,
MASTER_USER='root',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='master-bin.000003',
MASTER_LOG_POS=498;
# 开启slave
start slave;
# 查看主从同步状态
show slave status \G;

从节点此处两个配置,Master_Log_File和Read_Master_Log_Pos等于步骤5,主库的File名称及Position位置;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值