当前位置: 首页 > news >正文

docker搭建mysql主从复制

在这里插入图片描述

1. 基础环境

  • 环境
名称描述
CentOS 7.6Linux操作系统版本
docker 20.10.5docker版本
mysql 8.0.29mysql镜像版本
  • 节点
节点名称读写/主从地址端口
master读节点/主节点192.168.1.6:3306
slave1写节点/从节点192.168.1.6:3307
slave2写节点/从节点192.168.1.6:3308

2. 主节点

  • 使用docker拉取mysql数据库的8.0.29版本镜像文件
[root@zhouwei ~]# docker pull mysql:8.0.29
  • 通过镜像构建主节点,端口3306,并映射配置文件至宿主机,容器名称为mysql-master,root用户密码为root
[root@zhouwei ~]# docker run -d -p 3306:3306 -v /mysql/master/conf:/etc/mysql/conf.d -v /mysql/master/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root --name mysql-master mysql:8.0.29
  • 创建主节点配置文件
[root@zhouwei ~]# vim /mysql/master/conf/my.cn

内容如下:

[mysqld]
server-id=1
binlog_format=STATEMENT

  • 重启容器
[root@zhouwei ~]# docker restart mysql-master
  • root用户开启远程连接
# step1:进入容器内部
[root@zhouwei ~]# docker exec -it mysql-master env LANG=C.UTF-8 /bin/bash# step2:登录mysql服务,账号root 密码root
bash-4.4# mysql -uroot -p# step3:开启远程连接
mysql> alter user 'root'@'%' identified with mysql_native_password by 'root';

2. 从节点

  • 通过镜像构建从节点1,端口3307,并映射配置文件至宿主机,容器名称为mysql-slave1,root用户密码为root
[root@zhouwei ~]# docker run -d -p 3307:3306 -v /mysql/slave1/conf:/etc/mysql/conf.d -v /mysql/slave1/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root --name mysql-slave1 mysql:8.0.29
  • 创建主节点配置文件
[root@zhouwei ~]# vim /mysql/slave1/conf/my.cn

内容如下:

[mysqld]
server-id=2

  • 重启容器
[root@zhouwei ~]# docker restart mysql-slave1
  • 类似主节点开启远程连接
  • 同理在3308端口配置从节点2

3. 配置主从

  • 使用root用户登录主节点创建用户
-- 创建用户
CREATE USER 'slave'@'%';
-- 设置密码
ALTER USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY 'slave';
-- 赋予复制权限
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';
-- 刷新权限
FLUSH PRIVILEGES;
  • 查看主节点状态
SHOW MASTER STATUS;

在这里插入图片描述

  • 使用root用户登录从节点开启复制线程
CHANGE MASTER TO MASTER_HOST = '192.168.1.6',
MASTER_USER = 'slave', 
MASTER_PASSWORD = 'slave', 
MASTER_PORT = 3306, 
MASTER_LOG_FILE = 'binlog.000003',
MASTER_LOG_POS = 1427;START SLAVE;SHOW SLAVE STATUS;

在这里插入图片描述

相关文章:

docker搭建mysql主从复制

1. 基础环境 环境 名称描述CentOS 7.6Linux操作系统版本docker 20.10.5docker版本mysql 8.0.29mysql镜像版本 节点 节点名称读写/主从地址端口master读节点/主节点192.168.1.6:3306slave1写节点/从节点192.168.1.6:3307slave2写节点/从节点192.168.1.6:3308 2. 主节点 使…...

在MacBook上实现免费的PDF文件编辑

之前我想对PDF文件进行简单处理(比如删页面、添空白页、调整页面顺序),要么是开wps会员【花钱贵】,下载(盗版)Adobe Acrobat【macOS不好下载】,要么用福昕阅览器登陆学生账号(学校买…...

QT第2课-GUI程序实例分析

GUI程序开发概述 不同的操作系统GUI开发原理相同不同的操作系统GUI SDK 不同 GUI 程序开发原理 GUI程序在运行时会创建一个消息队列系统内核将用户的键盘鼠标操作翻译成对应的程序消息程序在运行过程中需要实时处理队列中的消息当队列中没有消息时,程序将处于停滞…...

Android修行手册 - POI操作Excel常用样式(字体,背景,颜色,Style)

点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&…...

Sprint Boot 学习路线 5

Spring MVC Spring MVC是Spring框架的一部分,是一个Web应用程序框架。它旨在使用Model-View-Controller(MVC)设计模式轻松构建Web应用程序。 在Spring MVC中,应用程序被分为三个主要组件:Model、View和Controller。M…...

git02->gui图形化界面使用,ssh协议,idea集成GIT

gui图形化界面使用ssh协议idea集成GIT 1.gui图形化界面使用 2.ssh协议 git/github生成密钥并通过 操作分为本地电脑配置和github网站配置 第一步:本地电脑配置 右键空白处,选择Git Bash Here打开相关命令窗口 1.配置用户名和邮箱(如果已经配…...

面向对象 元类 gil log 协程 垃圾回收 描述符 property

封装、继承、多态 当谈到封装、继承和多态时,通常是在面向对象编程 (OOP) 的上下文中讨论的。 封装 (Encapsulation) 示例: class Person: def __init__(self, name, age): self.__name = name # 使用双下划线前缀将属性变为私有 self.__age = age ​ de…...

bibitem格式 添加参考文献

这次写论文时遇到一种bibitem格式的参考文献,latex中没有bib文件 分三步走 找到这篇文章的Bib Tex的引用,然后新建bib文件,命名为下图: 然后把Bib Tex引用的内容复制到上图的文件中,新建tex文件 内容为 \document…...

Leetcode 2934. Minimum Operations to Maximize Last Elements in Arrays

Leetcode 2934. Minimum Operations to Maximize Last Elements in Arrays 1. 解题思路2. 代码实现 题目链接:2934. Minimum Operations to Maximize Last Elements in Arrays 1. 解题思路 这一题思路上其实很简单,直接分情况考察一下最后一个元素交换…...

02:2440---时钟体系

目录 一:时钟控制 1:基本概念 2:时钟结构图 3:结构图分析 4:总线 5:寄存器 A:FCLK--MPLLCON B:HCLK和PCLK--CLKDIVN C:注意 二:上电复位 1:上电复位 2:时钟选择 三:代码 一:时钟控制 1:基本概念 S3C2440A中的时钟控制逻辑可以产生所需的时钟信号,包括C…...

SOEM源码解析——ecx_siiSM(读取SII的SM信息)

0 工具准备 1.SOEM-master-1.4.0源码1 ecx_siiSM函数总览 /** Get SM data from SII SM section in slave EEPROM.从SII的SM段获取SM信息* @param[in] context = context struct 句柄* @param[in] slave = slave number 从站序号* @param[out] SM = first SM str…...

【见缝插针】射击类游戏-微信小程序项目开发流程详解

还记得小时候玩过的见缝插针游戏吗,比一比看谁插得针比较多,可有趣了,当然了,通过它可以训练自己的手速反应,以及射击水平,把握时机,得分越高就越有成就感,相信小朋友们会喜欢它的&a…...

flutter开发实战-TweenSequence实现动画序列

flutter开发实战-TweenSequence实现动画序列 一、TweenSequence TweenSequence是允许创建一个Animation由一系列补间动画来确定值,每个TweenSequenceItem都有定义在动画的持续时间的权重确定动画间隔。 TweenSequence 动画组类TweenSequenceItem 用来定义每一个动…...

Flowable 外部表单

内置表单需要在每个节点中去配置,当如果多个节点使用同一套表单属性就要配置多次比较麻烦,修改的时候也要修改多次,外部表单可以定义一次,然后其它节点都去引用同一个表单属性。 外部表单需要定义一个.form后缀的文件。 外部表单…...

[mysql]索引优化-2

目录 一、分页查询优化1.根据自增且连续的主键排序的分页查询2.根据非主键字段排序的分页查询 二、Join关联查询优化1.嵌套循环连接 Nested-Loop Join(NLJ) 算法2.基于块的嵌套循环连接 Block Nested-Loop Join(BNL)算法 三、count(*)查询优化1.查询mysql自己维护的总行数2.sho…...

数据分析实战 | 泊松回归——航班数据分析

目录 一、数据及分析对象 二、目的及分析任务 三、方法及工具 四、数据读入 五、数据理解 六、数据准备 七、模型训练 八、模型评价 一、数据及分析对象 CSV文件:o-ring-erosion-only.csv 数据集链接:https://download.csdn.net/download/m0_7…...

Fliki AI:让视频创作更简单、更高效

在当今的数字时代,视频已经成为人们获取信息和娱乐的重要方式。无论是企业宣传、教育培训还是个人创作,视频都发挥着越来越重要的作用。然而,视频制作是一项复杂的工作,需要掌握一定的技能和经验。这对于初学者或没有专业视频制作…...

webGL编程指南 第五章 MultiTexture.html

我会持续更新关于wegl的编程指南中的代码。 当前的代码不会使用书中的缩写&#xff0c;每一步都是会展开写。希望能给后来学习的一些帮助 git代码地址 &#xff1a;空 上一章节中我们学习texParameteri的使用,这一章节中我们两个图片进行混合 <!DOCTYPE html> <htm…...

mysql8安装和驱动jar包下载

方式一&#xff1a;基于docker安装 下拉镜像 docker pull mysql:8.0.21 启动镜像 docker run -p 3307:3306 --name mysql -e MYSQL_ROOT_PASSWORDhadoop -d mysql:8.0.21 启动成功后&#xff0c;进入容器内部拷贝配置文件&#xff0c;到宿主主机 docker cp mysql:/etc/mysql…...

(SpringBoot)第五章:SpringBoot创建和使用

文章目录 一&#xff1a;Spring和SpringBoot&#xff08;1&#xff09;Spring已解决和未解决的问题&#xff08;2&#xff09;SpringBoot 二&#xff1a;Spring项目的创建&#xff08;1&#xff09;IDEA创建&#xff08;2&#xff09;网页端创建 三&#xff1a;项目目录介绍及运…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合

在汽车智能化的汹涌浪潮中&#xff0c;车辆不再仅仅是传统的交通工具&#xff0c;而是逐步演变为高度智能的移动终端。这一转变的核心支撑&#xff0c;来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒&#xff08;T-Box&#xff09;方案&#xff1a;NXP S32K146 与…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建

【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...

微服务通信安全:深入解析mTLS的原理与实践

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言&#xff1a;微服务时代的通信安全挑战 随着云原生和微服务架构的普及&#xff0c;服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...

Mac flutter环境搭建

一、下载flutter sdk 制作 Android 应用 | Flutter 中文文档 - Flutter 中文开发者网站 - Flutter 1、查看mac电脑处理器选择sdk 2、解压 unzip ~/Downloads/flutter_macos_arm64_3.32.2-stable.zip \ -d ~/development/ 3、添加环境变量 命令行打开配置环境变量文件 ope…...