Docker 教程十五配置MySQL 主从复制

配置主库:
第一步:创建文件夹
mkdir -p /docker/mysql/mysqlmaster
编写配置文件
vim /docker/mysql/mysqlmaster/my.cnf

[client]  
default-character-set=utf8
[mysql]  
default-character-set=utf8
[mysqld]  
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
server_id = 3307  #mysql主从的重要属性,要保证主库和从库的server_id不同
log_bin = log  #因为要做主从切换,所以主库和从库都开启。如果只是读写。就只要主库配置即可

第二步:下载MySQL 镜像
docker pull mysql:5.7

第三步:创建并运行 MySQL 容器
docker run –privileged=true –name mysql -p 3307:3306 -v /docker/mysql/mysqlmaster/my.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

这里写图片描述

第四步:连接数据库测试
docker exec -it mysql bash
mysql -u root -p
输入密码:root
查看二进制文件
show master status

这里写图片描述

配置从库
第一步:创建文件夹
mkdir -p /docker/mysql/mysqlslave
vim /docker/mysql/mysqlslave/my.cnf
第二步:创建并运行 MySQL 容器
docker run –privileged=true –name mysqlslave -p 3308:3306 -v /docker/mysql/mysqlslave/my.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

这里写图片描述

配置主从:
第一步:连接主库

设置用户
grant replication slave on . to ‘backup’@’%’ identified by ‘qfjava’;
flush privileges;#刷新权限使得刷新
第二步:查看二进制文件
show master status;
二进制文件:log.000003 591

第三步:查看主库 ip 信息
docker inspect mysql

ip:172.17.0.3

第四步:连接从库
设置主库信息
CHANGE MASTER TO MASTER_HOST=’172.17.0.3’,master_port=3306,MASTER_USER=’backup’,MASTER_PASSWORD=’qfjava’,MASTER_LOG_FILE=’log.000003’,MASTER_LOG_POS=591;

start slave;#启动复制

show slave status

这里写图片描述

第五步:测试
这里写图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值