linux mysql 8.X主从复制

准备两台linux服务器,注意要锁ip
在这里插入图片描述
在这里插入图片描述
我这里如上图
主库 192.168.5.5/24
从库 192.168.5.10/24

接下来确定mysql是否启动成功并且能从外部连接

主库
在这里插入图片描述

从库
在这里插入图片描述

主服务器配置

vim编辑主服务器配置

vim /etc/my.cnf

注意是下面那个
在这里插入图片描述
添加配置代码

log-bin=mysql-bin  # 配置二进制日志
server-id=100	#配置服务器id

在这里插入图片描述
配置好后 重启mysql

systemctl restart mysqld

在这里插入图片描述
创建用户当作复制账户

-- 1. 创建用户(如果不存在)
CREATE USER IF NOT EXISTS 'repl_user'@'%' IDENTIFIED BY 'Root@123456';-- 2. 授予复制权限
GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%';-- 3. 刷新权限(使更改生效)
FLUSH PRIVILEGES;

查看MASTER 状态

SHOW MASTER STATUS;

在这里插入图片描述
注意此时不要再操作数据库

从库设置

依旧是去mysql设置id 注意不要一样
在这里插入图片描述
然后重启mysql服务

systemctl restart mysqld

停止现有复制(如果运行中):

STOP REPLICA;

重置复制状态

RESET REPLICA ALL;  -- 清除所有复制配置

执行下面sql配置复制

CHANGE REPLICATION SOURCE TOSOURCE_HOST = '192.168.5.5',SOURCE_USER = 'repl_user',SOURCE_PASSWORD = 'xxxx',SOURCE_LOG_FILE = 'mysql-bin.000001',SOURCE_LOG_POS = 1929,GET_SOURCE_PUBLIC_KEY = 1,  -- 允许获取公钥SOURCE_CONNECT_RETRY = 8,SOURCE_RETRY_COUNT = 1000,    -- 最大重试次数SOURCE_HEARTBEAT_PERIOD = 30, -- 心跳间隔CONNECTION_AUTO_FAILOVER = 1; -- 自动故障转移

启动复制

START REPLICA;

查看状态

SHOW REPLICA STATUS\G

在这里插入图片描述

主库
//设置日志定期清理防止满盘

SET GLOBAL binlog_expire_logs_seconds = 7776000; --保留90天//单位秒

验证
新建aaa
在这里插入图片描述
从机自动创建
在这里插入图片描述
ok

2025-8-8日补充

今天发现虚拟机重启后,主从复制没了
这是因为上面的配置缺少

  1. relay_log_recovery=1 – 中继日志恢复机制
  2. gtid_mode=ON – GTID全局事务标识
  3. enforce_gtid_consistency=ON – GTID一致性检查

先在从库添加

vim /etc/my.cnf

# 启用中继日志自动恢复
relay_log_recovery = 1# 启用GTID复制(避免位点失效)
gtid_mode = ON
enforce_gtid_consistency = ON# 可选:禁止启动时自动开启复制(只是为了方便故障排查)
skip_slave_start = 1

在这里插入图片描述

然后重启
sudo systemctl restart mysqld

然后登录mysql 配置GTID

STOP SLAVE;
RESET SLAVE ALL;-- 使用GTID自动定位(无需手动指定binlog位置)
CHANGE REPLICATION SOURCE TOSOURCE_HOST = '192.168.5.5',			-- 注意替换自己ipSOURCE_USER = 'repl_user',			-- 注意替换自己的用户SOURCE_PASSWORD = '^Lin@log64.ms$',  	-- 注意替换成自己的密码SOURCE_AUTO_POSITION = 1,       		-- ★ 关键改进:使用GTID自动定位 ★GET_SOURCE_PUBLIC_KEY = 1,SOURCE_CONNECT_RETRY = 8,SOURCE_RETRY_COUNT = 1000,SOURCE_HEARTBEAT_PERIOD = 30,SOURCE_SSL = 1,                 -- 新增:启用SSL加密SOURCE_TLS_VERSION = 'TLSv1.3', -- 新增:强制TLS版本NETWORK_NAMESPACE = '';         -- 明确指定网络命名空间START SLAVE;

在这里插入图片描述

主库更改

# 确保binlog持久化
sync_binlog = 1# 启用GTID(与从库匹配)
gtid_mode = ON
enforce_gtid_consistency = ON

在这里插入图片描述
然后登录主库mysql
查看状态

SHOW VARIABLES LIKE 'gtid_mode';

在这里插入图片描述
然后去从库从其slave,并查看状态

STOP SLAVE;
START SLAVE;
SHOW SLAVE STATUS\G;

在这里插入图片描述
重点关注如下字段
在这里插入图片描述
去可视化操作看下,可以发现主从复制好了

在这里插入图片描述
重启模拟关机

注意事项

重要注意事项

如果主库已有数据:需要重新建立全量同步

# 主库备份
mysqldump --all-databases --single-transaction --master-data=2 -uroot -p > full.sql# 从库导入
mysql -uroot -p < full.sql

SSL配置额外步骤(如启用)

  1. 主库生成SSL证书
-- 检查是否已有证书
SHOW VARIABLES LIKE '%ssl%';-- 若无证书,执行(MySQL 8.0+自动生成)
INSTALL COMPONENT "file://component_validate_password";
ALTER INSTANCE ROTATE INNODB MASTER KEY;
  1. 从库配置信任主库证书
-- 主库执行:查看公钥
SHOW STATUS LIKE 'Caching_sha2_password_rsa_public_key';-- 复制公钥值,在从库执行:
SET @@GLOBAL.replication_source_public_key_path = '主库公钥值';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/92494.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/92494.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

豆包新模型矩阵+PromptPilot:AI开发效率革命的终极方案

> **一套让AI开发者告别“调参炼狱”的黄金组合,效率提升300%的实战指南** ## 一、AI开发的范式转移:从通用模型到**场景化矩阵** 2025年,AI应用开发面临核心矛盾:**业务场景高度细分**与**模型能力同质化**的冲突。火山引擎的破局之道是推出**豆包1.6模型矩阵**——三…

瑞利杂波背景下不同环境的虚警概率与目标检测概率仿真

仿真方案&#xff0c;研究在瑞利杂波背景下&#xff0c;均匀环境、多目标环境和杂波墙环境中的虚警概率(Pfa)和目标检测概率(Pd)。 理论基础 瑞利分布 瑞利分布常用于描述雷达杂波的幅度分布&#xff1a; p(x) (x/σ) * exp(-x/(2σ)), x ≥ 0其中σ是尺度参数&#xff0c;决定…

Spring Boot + Tesseract异步处理框架深度解析,OCR发票识别流水线

Spring Boot Tesseract异步处理框架深度解析&#xff0c;OCR发票识别流水线一、系统架构设计1.1 分布式流水线架构1.2 核心组件职责1.3 数据流设计二、Spring Boot异步框架实现2.1 线程池优化配置2.2 异步服务层设计2.3 异步流水线编排三、Tesseract深度优化3.1 发票专用训练模…

Arm Qt编译Qt例程出错 GLES3/gl3.h: No such file or directory

解决方法 PC&#xff1a;Ubuntu22.04.1 QtCreator&#xff1a; 4.11.1 交叉编译环境&#xff1a;YC6254 开发板提供的 5-编译工具链->qt交叉编译工具 在之前博客配置成功的交叉编译环境&#xff0c;编译Qt5.14.8自带部分Example时&#xff0c;出现 GLES3/gl3.h: No such …

HydroOJ:开源在线判题系统的创新与实践

HydroOJ&#xff1a;开源在线判题系统的创新与实践 在数字化与信息化深度融合的今天&#xff0c;编程教育已成为全球教育改革的重要方向&#xff0c;而在线判题系统&#xff08;Online Judge&#xff0c;简称 OJ&#xff09;作为编程学习、算法训练和竞赛组织的核心工具&#…

tcpdump问题记录

问题一: scapy发送vlan报文&#xff0c;tcpdump过滤抓包未抓到包的问题 发包 sendp([Ether(src"11:22:33:44:55:00")/Dot1Q(vlan1001)/IP()/UDP()/"Hello, VLAN!"], iface"ens9")vlan过滤抓包&#xff0c;不OK。 # tcpdump -i ens9 -nnvve -Q ou…

计算机视觉面试保温:CLIP(对比语言-图像预训练)和BERT技术概述

一、CLIP技术 CLIP&#xff0c;全称 Contrastive Language-Image Pre-training&#xff08;对比语言-图像预训练&#xff09;&#xff0c;是由 OpenAI 在 2021 年提出的一个里程碑式的模型。它的核心思想在于利用自然语言作为监督信号来学习强大的视觉表示&#xff0c;从而打破…

用户组权限及高级权限管理:从基础到企业级 sudo 提权实战

用户组权限及高级权限管理&#xff1a;从基础到企业级 sudo 提权实战 在 Linux/Unix 系统里&#xff0c;权限管理不是一个可有可无的小功能&#xff0c;而是系统安全的第一道防线。无论是个人电脑、企业服务器还是云环境&#xff0c;权限配置直接影响系统的稳定性和安全性。一、…

oracle-plsql理解和操作

1、plsql的概念PL/SQL(Procedural Language/SQL)是一种过程化语言&#xff0c;属于第三代语言&#xff0c;它与C、C、Java等语言一样关注于处理细节&#xff0c;可以用来实现比较复杂的业务逻辑。它允许SQL的数据操纵语言和查询语句包含在块结构(block_structured)和代码过程语…

数据库恢复技术:保障数据安全的关键

文章目录前言数据库恢复技术一、事务的基本概念二、数据库恢复概述三、故障类型与恢复策略1. 故障分类2. 恢复策略与步骤四、恢复实现技术1. 数据转储&#xff08;备份&#xff09;2. 日志文件&#xff08;Logging&#xff09;3. 检查点技术&#xff08;Checkpoint&#xff09;…

C++归并排序

1 算法核心思想归并排序是一种高效的排序方式&#xff0c;需要用到递归来实现&#xff0c;我们先来看一下动图演示&#xff1a;算法核心思想如下&#xff1a;1.将数组尽量平均分成两段。2.将这两段都变得有序&#xff08;使用递归实现&#xff09;。3.将两段合并。2 代码实现首…

机器学习算法篇(四)决策树算法

目录 一、决策树概述 1.1 概述 1.2 基本数学原理 二、熵原理形象解读与计算 2.1 熵的概念 2.2 熵的计算示例 2.3 条件熵 三、决策树构造实例 3.1 数据集示例 3.2 计算信息增益 3.3 递归构建决策树 四、信息增益和信息增益率 4.1 信息增益的缺陷 4.2 信息增益率 4…

React 状态管理入门:从 useState 到复杂状态逻辑

作为前端新手&#xff0c;在学习 React 时&#xff0c;useState 往往是我们接触的第一个 Hook。很多人最初会觉得它只能处理简单的计数器之类的状态&#xff0c;但实际上&#xff0c;useState 配合其他 Hook&#xff08;尤其是 useEffect&#xff09;可以轻松管理各种复杂状态。…

DirectX 修复工具检测 C++ 异常的七大解决方法

在使用电脑的过程中&#xff0c;尤其是在进行与图形处理、游戏运行或多媒体应用相关的操作时&#xff0c;我们可能会用到 DirectX 修复工具。然而&#xff0c;有时这个工具在运行时会检测到 C 异常&#xff0c;这无疑给我们带来了困扰。那么&#xff0c;当遇到这种情况时&#…

0.2. RAII原则:嵌入式C++的基石 (Resource Acquisition Is Initialization)

在C语言的世界里&#xff0c;我们背负着一项沉重而危险的职责&#xff1a;手动管理所有资源。无论是 malloc 后的 free&#xff0c;fopen 后的 fclose&#xff0c;还是获取互斥锁后的释放&#xff0c;程序员都必须在代码的每一个可能的退出路径上&#xff0c;确保资源被正确释放…

Uniworld-V1、X-Omni论文解读

目录 一、Uniworld-V1 1、概述 2、架构 3、训练过程 4、实验 二、X-Omni 1、概述 2、方法 一、Uniworld-V1 1、概述 动机&#xff1a;当前统一模型虽然可以实现图文理解和文本生成任务&#xff0c;但是难以实现图像感知&#xff08;检测/分割&#xff09;与图像操控&am…

安全常见漏洞

一、OWASP Top 101.注入漏洞(1)SQL 注入原理&#xff1a;通过用户输入注入恶意SQL代码示例&#xff1a;sql-- 恶意输入OR 11 -- 可能被注入的SQL SELECT * FROM users WHERE username OR 11 AND password (2)防护措施&#xff1a;使用参数化查询使用ORM框架实施最小权限原则…

管网遥测终端机——管网安全与效率的守护者

管网遥测终端机是一款智能化的管网监测与管理设备&#xff0c;它采用先进的物联网技术和自动化控制技术&#xff0c;能够全天候不间断地对管网系统进行实时监测。该设备通过集成高精度传感器、稳定可靠的通信模块和强大的数据处理单元&#xff0c;构建了一套完整的管网运行数据…

AIIData商业版v1.4.1版本发布会

&#x1f525;&#x1f525; AllData大数据产品是可定义数据中台&#xff0c;以数据平台为底座&#xff0c;以数据中台为桥梁&#xff0c;以机器学习平台为中层框架&#xff0c;以大模型应用为上游产品&#xff0c;提供全链路数字化解决方案。 ✨杭州奥零数据科技官网&#xff…

【Layui】调整 Layui 整体样式大小的方法

Layui 的默认样式确实偏大,但你可以通过以下几种方法来调整整体大小: 使用缩放方法(最简单) 在 HTML 的 中添加以下 CSS: <style> html {font-size: 14px; /* 调整基础字体大小 */transform: scale(