MySQL 主从复制部署(8.0)
什么是主从数据库
主从数据库是一种数据库架构模式,通常用于提高数据库的性能、可用性和可伸缩性。
它包括两种类型的数据库服务器:
1)主数据库(Master):主数据库是读写数据的主要数据库服务器。所有写操作(插入、更新、删除)都在主数据库上执行。主数据库负责维护数据的一致性,并将写操作的变更记录下来。
2)从数据库(Slave):从数据库是只读副本,它从主数据库中复制数据。承担一部分主库的的读数据压力,从而减轻了主数据库的负担。从数据库可以有多个,构成一个复制链,其中每个从数据库都从前一个从数据库中复制数据。

主从数据库优缺点
1)优点
- 高可用,主库挂了,从库顶上。
- 读写分离,主库用于写,从库用于读,从而缓解主库压力。
- 备份数据。
2)缺点
- 数据延迟:由于数据复制的时间延迟,从数据库可能不会立即反映主数据库中的更改。
- 配置和维护复杂性:设置和维护主从数据库架构需要额外的工作,特别是确保数据的一致性和复制的稳定性。
主从数据库的搭建
主库配置
1)修改配置文件/etc/my.cnf
# mysql服务ID,保证整个集群环境中唯一,默认为1
server-id=1# 是否只读,1代表只读,0代表读写
read-only=0# 开启gtid(用于适配MASTER_AUTO_POSITION)
gtid-mode = ON
enforce-gtid-consistency = ON
# log-slave-updates=1
2)重启MySQL服务器
systemctl restart mysqld
3)登录mysql,创建远程连接的账号,并授予主从复制权限
# 创建s01用户,并设置密码,该用户可在任意主机连接该MySQL服务
# 删除创建的用户drop user 's01'@'%';
create user 's01'@'%' identified with mysql_native_password by 'Root@123456';# 为s01用户分配主从复制权限
grant replication slave on *.* to 's01'@'%';
4)通过指令,查看二进制日志坐标
show master status;
执行结果:

- file:从哪个日志文件开始推送;
- position:从哪个位置开始推送日志;
- binlog_ignore_db:不需要同步的数据库;
从库配置
1)修改配置文件 /etc/my.cnf
# mysql服务ID,保证整个集群环境中唯一,默认为1
server-id=2# 是否只读,1代表只读,0代表读写
read-only=1# 开启gtid(用于适配MASTER_AUTO_POSITION)
gtid-mode = ON
enforce-gtid-consistency = ON
# log-slave-updates=1
2)重启MySQL服务器
systemctl restart mysqld
3)登录mysql,设置主库配置
# 使用s01用户连接
change master to source_host='127.0.0.1',source_user='s01',source_password='kingsoft.',master_port=3307,MASTER_AUTO_POSITION =1;# 使用root用户连接(二选一即可)
change master to source_host='127.0.0.1',source_user='root',source_password='kingsoft.',master_port=3307,MASTER_AUTO_POSITION =1;
注:
- source_host:如果是同一台机器用127.0.0.1或内网ip都可以,如果是不同机器使用外网ip;
- master_port:指定主节点的端口号,未指定时默认3306;
4)开启同步操作
# 关闭同步操作:stop slave;
start slave;
6)查看主从同步状态
show slave status\G;
执行结果:

注:如果 Slave_IO_Running 和 Slave_SQL_Running 都为 Yes,则说明主从复制部署成功。
- Master_Log_File: 从服务器正在读取的主服务器的二进制日志文件的名称。
- Read_Master_Log_Pos: 从服务器已经读取的主服务器二进制日志的位置。
- Relay_Master_Log_File: 已经应用到从服务器数据的主服务器二进制日志文件的名称。
- Exec_Master_Log_Pos: 已经应用到从服务器数据的主服务器二进制日志的位置。
- Slave_IO_Running 和 Slave_SQL_Running: 分别表示从服务器的 I/O 线程和 SQL 线程是否正在运行。
- Last_Errno 和Last_Error: 最后一次复制时的错误号和错误信息。
注:正常情况下无法查看master.info里的内容,但可以通过show slave status指令查看其中许多重要信息。
相关文章:
MySQL 主从复制部署(8.0)
什么是主从数据库 主从数据库是一种数据库架构模式,通常用于提高数据库的性能、可用性和可伸缩性。 它包括两种类型的数据库服务器: 1)主数据库(Master):主数据库是读写数据的主要数据库服务器。所有写操…...
大话设计模式——16.命令模式(Command Pattern)
简介 请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的对象进行执行。命令模式是一种特殊的策略模式,体现多个策略执行的问题,而不是选择的问题 UML图 应用场景 界面选择、键盘、按钮、事件操作都类似命令模式 …...
react17+18 中 setState是同步还是异步更新
在类组件中使用setState,在函数式组件中使用hooks的useState。 setstate目录 1. 类组件1.1 react 17版本1.2 react 18版本 2、函数式组件 1. 类组件 1.1 react 17版本 参考内容:第十一篇:setState 到底是同步的,还是异步的&…...
Unity框架,ET框架8.1版本的打包流程记录
目录 打包代码前置1.必须要安装Visusal Studio 2022的组件,如下图,必须都要进行安装,不然会在代码重构的时候报错,丢失SDK。Rider的版本必须2023及以上 步骤一、使用Rider编辑器打开项目后进行重构项目步骤二、使用HybirdCLR生成A…...
windows访问wsl中的docker
1、启动windows路由转发功能: 找到任务管理器 --》服务–》打开服务–》 ROUTing and Remote Access 2、关闭wsl中linux的防火墙 3、查看docker系统和linux系统的ip和网关 以下面为例 # docker系统 eth0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu…...
golang主要优缺点
优点 1)采用协程机制,可以很方便的支持高并发,性能还不错。 2)非常易于使用,产出效率很高。 缺点 也是协程机制。程序中一切皆协程,并且自己做了协程调度机制,而不是传统的 线程机制。导致需…...
浅谈Redis和一些指令
浅浅谈一谈Redis的客户端 Redis客户端 Redis也是一个客户端/服务端结构的程序。 MySQL也是一个客户端/服务端结构的程序。 Redis的客户端也有多种形态 1.自带命令行客户端 redis-cli 2.图形化界面的客户端(桌面程序,web程序) 像这样的图形…...
AI大模型探索之路-应用篇1:Langchain框架概述—快速构建大模型应用
目录 一、什么是LangChain? 二、LangChain解决了哪些问题? 三、LangChain总体架构 四、代码实践样例 总结 一、什么是LangChain? 为大模型应用提供简便之道。 LangChain,专为构建庞大的语言模型应用程序设计的框架࿰…...
Google Chrome 常用设置
Google Chrome 常用设置 References 转至网页顶部 快捷键:Home 转至内容设置 chrome://settings/content 清除浏览数据 历史记录 -> 清除浏览数据 关于 Chrome 设置 -> 关于 Chrome chrome://settings/help References [1] Yongqiang Cheng, https:/…...
如何提高旋转花键运行稳定性?
现代化精密仪器设备中,精密仪器的稳定工作性能对于生产效率和产品质量至关重要,运行效率和精度是常见问题。旋转花键作为机械传动系统中的重要组成部分,其稳定性也是直接影响到机械装配的质量和使用寿命,那么我们应该如何提升旋转…...
每日一题 第八十七期 洛谷 [蓝桥杯 2018 省 AB] 全球变暖
[蓝桥杯 2018 省 AB] 全球变暖 题目描述 你有一张某海域 N N N \times N NN 像素的照片,. 表示海洋、 # 表示陆地,如下所示: ....... .##.... .##.... ....##. ..####. ...###. .......其中 “上下左右” 四个方向上连在一起的一片陆地组…...
AI技术创业有哪些机会?
文章目录 ✍探索AI技术创业的机会与挑战💎引言💎AI技术的快速发展与应用💎🌹AI技术创业的机会与方向🌹1. 行业解决方案🌹2. 智能产品和服务🌹3. 教育和培训 💎AI技术创业的挑战与应对…...
TensorFlow学习之:基础概念和操作
TensorFlow简介 TensorFlow是一个开源的深度学习框架,由Google的研究团队Google Brain Team开发,并在2015年发布。它是基于DistBelief,Google之前的一个深度学习项目,但被重新设计以便更灵活、更强大、更适应于研究和生产。 历史…...
最新在线工具箱网站系统源码
内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 系统内置高达72种站长工具、开发工具、娱乐工具等功能。此系统支持本地调用API,同时还自带免费API接口, 是一个多功能性工具程序,支持后台管理、上…...
c# InvokeRequested delegate解决线程访问界面
说明 界面操作的代码应该写在界面(Form/Dialog)里 方法定义 private void Method1(string s) {...... }delegate定义 private delegate void Method1Delegate(string s);界面调用代码 private void op(){string sText"hello";if (this.In…...
使用 Web Workers 作为setInterval的替代方案
使用 Web Workers 作为setInterval的替代方案 在 Vue 项目中,为了避免 setInterval 在标签页非激活状态下的不准确问题,我们可以使用 Web Workers 作为一个替代方案 Web Worker 介绍: Web Workers : 浏览器后台为网页运行的一个小助手&…...
python实现将日期文本化
环境:python3.8.10 需要:有些时候,需要在一段文本的后面,添加上日期,尤其是文本重复的情况下,添加上每天的日期更为重要。 代码实现: import datetimetodaydatetime.date.today() date_textto…...
react ant design 通过函数弹出 modal窗口
在React Ant Design中,可以通过调用Modal组件的方法来动态弹出和关闭Modal窗口。具体步骤如下: 1、首先,在组件中引入Modal组件: import { Modal } from antd;2、在组件中定义一个函数来弹出Modal窗口: const showM…...
力扣刷题Days33-209. 长度最小的子数组(js)
目录 1,题目-滑动窗口 2,代码 滑动窗口 3,学习与总结 1,题目-滑动窗口 给定一个含有 n 个正整数的数组和一个正整数 target 。找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1,…...
面对DDOS攻击,有哪些解决办法
随着互联网带宽的持续增长以及DDOS黑客技术的发展,DDOS拒绝服务攻击的实施变得愈发容易。商业竞争、打击报复、网络敲诈等多种因素,各行各业的用户都曾受到DDOS攻击的威胁。 一旦遭受到DDOS攻击,随之而来的就是业务宕机,用户无法…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...
自然语言处理——文本分类
文本分类 传统机器学习方法文本表示向量空间模型 特征选择文档频率互信息信息增益(IG) 分类器设计贝叶斯理论:线性判别函数 文本分类性能评估P-R曲线ROC曲线 将文本文档或句子分类为预定义的类或类别, 有单标签多类别文本分类和多…...
