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
英文地址,請注明出處:http://en.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(