当前位置:网站首页>使用docker容器搭建MySQL主从复制
使用docker容器搭建MySQL主从复制
2022-08-03 02:59:00 【woshihedayu】
1、拉取mysql镜像
docker pull mysql
2、创建主节点docker容器
docker run --name mysql-master -p 3306:3306 -v /root/docker/mysql/master:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql
创建从节点docker容器
docker run --name mysql-slave -p 3307:3306 -v /root/docker/mysql/slave:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql
这里通过挂载目录的方式使mysql的配置文件生效。然后,分别在两个节点导入数据库user_db。
3、在/root/docker/mysql/master下创建主节点的配置文件mysql.cnf
[mysqld]
log-bin=mysql-bin # 启用二进制日志
server-id=1 # 服务器唯一ID,可以任意设置,但必须唯一
binlog-ignore-db=mysql # 不要复制的数据库
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=sys
binlog-do-db=user_db # 要复制的数据库名
注意,mysql的配置文件开头要加上[mysqld],我就是一开始没加这个东西导致配置怎么改都不生效,浪费了很多时间。这里设置了复制数据库user_db。重启容器,使配置生效。
4、在/root/docker/mysql/slave下创建从节点的配置文件mysql.cnf
[mysqld]
server-id=2
relay-log=mysql-relay
重启容器,使配置生效。
5、使用客户端连接主节点,执行如下命令
show master status
查看节点状态
在从节点执行如下命令
change master to
master_host='192.168.182.128',master_port=3306, master_user='root',master_password='123456',
master_log_file='mysql-bin.000003',master_log_pos=157;
实现复制。其中,master_log_file和master_log_pos分别对应上图中的File和Position。
6、在从节点执行
start slave
开启复制。执行
show slave status
查看复制状态,
出现两个Yes,说明主从复制已经搭建完成。
尝试向主节点的表中添加记录,会自动复制到从节点上。
边栏推荐
- 爆肝22个ES6知识点
- 重定向printf到USB CDC、串口2
- 豆瓣评分9.3的好书,文末给大家抽奖送几本!
- Auto.js Pro 编写第一个脚本hello world
- 如何画一张架构图(内含知识图谱)
- 工业边缘计算研究现状与展望
- How does Excel compare if two columns of strings are the same?
- 问下有用sql server flink-sql-connector-sqlserver-cdc-2
- Likou second week wrong questions collection
- Sentinel vs Hystrix 限流对比,到底怎么选?
猜你喜欢
随机推荐
Usage of permute() function in pytorch
【云原生】灰度发布、蓝绿发布、滚动发布、灰度发布解释
Nacos入门学习
List<Object>转List<User>:
PyTorch安装——安装PyTorch前在conda搭建虚拟环境的报错
金仓数据库 Pro*C 迁移指南(3. KingbaseES Pr*oc 对 Oracle Pro*c 的兼容)
【GraphQL】使用Hot Chocolate和.NET 6构建GraphQL应用
【leetcode热题Hot100】——LRU缓存
leetcode:149. 直线上最多的点数
金仓数据库 Pro*C 迁移指南( 5. 程序开发示例)
MySQL-Explain详解
【UE4】Build VR live broadcast in LAN UE4.27
# RACE32——高级断点的设置和应用
rancher集成ldap,实现统一账号登录
流程图(1)
5. Software testing ----- automated testing
【GO记录】从零开始GO语言——用GO语言做一个示波器(二)基于arduino的简易示波器
Pro_07丨波动率因子3.0与斜率因子
mysql-installer安装教程(详细图文)
compose 位移视图