最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL主從復(fù)制的原理及使用分析

 更新時(shí)間:2025年05月16日 09:34:34   作者:Pseudo…  
這篇文章主要介紹了MySQL主從復(fù)制的原理及使用,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

怎么理解主從復(fù)制呢?

主從復(fù)制,是指將一臺(tái)Redis服務(wù)器的數(shù)據(jù),復(fù)制到其他的Redis服務(wù)器。 前者稱為主節(jié)點(diǎn) (master),后者稱為從節(jié)點(diǎn) (slave); 數(shù)據(jù)的復(fù)制是單向的,只能由主節(jié)點(diǎn)到從節(jié)點(diǎn)。 默認(rèn)情況下,每臺(tái)Redis服務(wù)器都是主節(jié)點(diǎn),且一個(gè)主節(jié)點(diǎn)可以有多個(gè)從節(jié)點(diǎn) (或沒有從節(jié)點(diǎn)),但一個(gè)從節(jié)點(diǎn)只能有一個(gè)主節(jié)點(diǎn)。

一臺(tái)主 MySQL 服務(wù)器帶兩臺(tái)從 MySQL 服務(wù)器做數(shù)據(jù)復(fù)制前端應(yīng)用在進(jìn)行數(shù)據(jù)庫寫操作時(shí),對主服務(wù)器進(jìn)行操作,在進(jìn)行數(shù)據(jù)庫讀操作時(shí)對兩臺(tái)從服務(wù)器進(jìn)行操作,這樣大量減輕了對主服務(wù)器的壓力。

一. MySQL 主從復(fù)制原理

MySQL 的主從復(fù)制和 MySQL的讀寫分離兩者有著緊密聯(lián)系,首先要部署主從復(fù)制,只有主從復(fù)制完成了,才能在此基礎(chǔ)上進(jìn)行數(shù)據(jù)的讀寫分離。

1. MySQL 支持的復(fù)制類型

①基于語句的復(fù)制。在主服務(wù)器上執(zhí)行的 SQL 語句,在從服務(wù)器上執(zhí)行同樣的語句,MySQL 默認(rèn)采用基于語句的復(fù)制,效率比較高。

②基于行的復(fù)制。把改變的內(nèi)容復(fù)制過去,而不是把命令在從服務(wù)器上執(zhí)行一遍

③混合類型的復(fù)制。默認(rèn)采用基于語句的復(fù)制,一旦發(fā)現(xiàn)基于語句無法精確復(fù)制時(shí),就會(huì)采用基于行的復(fù)制。

2. 復(fù)制的工作過程

①在每個(gè)事務(wù)更新數(shù)據(jù)完成之前,Master 將這些改變記錄進(jìn)二進(jìn)制日志。寫入二進(jìn)制日志完成后,Master 通知存儲(chǔ)引擎提交事務(wù)。

②Slave 將 Master 的 Binary log 復(fù)制到其中繼日志(Relay log)。首先,Slave 開始一個(gè)工作線程--I/0 線程,I/0 線程在 Master 上打開一個(gè)普通的連接,然后開始 Binlog dump process。Binlog dump process 從 Master 的二進(jìn)制日志中讀取事件,如果已經(jīng)跟上 Master,它會(huì)睡眠并等待 Master 產(chǎn)生新的事件。I/0 線程將這些事件寫入中繼日志。

③ SQL slave thread(SQL 從線程)處理該過程的最后一步。SQL 線程從中繼日志讀取事件,并重放其中的事件而更新 Slave 數(shù)據(jù),使其與 Master 中的數(shù)據(jù)保持一致。只要該線程與 I/0 線程保持一致,中繼日志通常會(huì)位于0S 的緩存中,所以中繼日志的開銷很小。復(fù)制過程有一個(gè)很重要的限制,即復(fù)制在 S1ave 上是串行化的,也就是說 Master 上的并行更新操作不能在 Slave 上并行操作。

二. 案例實(shí)施

1. 搭建MySQL主從復(fù)制在所有節(jié)點(diǎn)進(jìn)行時(shí)間同步

關(guān)閉防火墻

安裝數(shù)據(jù)庫參考前面的文章

這個(gè)用的是腳本安裝的mysql

直接用bash執(zhí)行腳本

設(shè)置配置文件

2. 配置master主服務(wù)器登錄MySQL程序

給從服務(wù)器授權(quán)

在show命令前用flush privileges;更新一下

其中 File 列顯示日志名,Position 列顯示偏移量,這兩個(gè)值在后面配置從服務(wù)器的時(shí)候需要。Slave 應(yīng)從該點(diǎn)上進(jìn)行新的更新。

3. 配置Slave 從服務(wù)器在/etc/my.cnf 中修改或者增加下面內(nèi)容

這里要注意 server-id 不能相同。

重啟服務(wù)器

登錄到mysql,配置同步

4. 驗(yàn)證主從復(fù)制效果在主從服務(wù)器登錄查看庫

兩臺(tái)數(shù)據(jù)庫執(zhí)行結(jié)果應(yīng)該相同

  • 主:

  • 從:

在主服務(wù)器創(chuàng)建數(shù)據(jù)庫 aaa 然后在主從服務(wù)器查看

  • 主 :

  • 從:

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MySQL遠(yuǎn)程連接配置:解決Host XXX is not allowed to connect錯(cuò)誤

    MySQL遠(yuǎn)程連接配置:解決Host XXX is not allowed&nb

    本文詳細(xì)解析了MySQL遠(yuǎn)程連接時(shí)出現(xiàn)的'Host is not allowed to connect'錯(cuò)誤,提供了完整的配置指南,從權(quán)限修改到安全加固,幫助用戶快速解決連接問題,感興趣的可以了解一下
    2026-03-03
  • mysql數(shù)據(jù)庫查詢基礎(chǔ)命令詳解

    mysql數(shù)據(jù)庫查詢基礎(chǔ)命令詳解

    這篇文章主要介紹了mysql數(shù)據(jù)庫查詢基礎(chǔ)命令,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-11-11
  • MySQL數(shù)據(jù)庫之?dāng)?shù)據(jù)表操作DDL數(shù)據(jù)定義語言

    MySQL數(shù)據(jù)庫之?dāng)?shù)據(jù)表操作DDL數(shù)據(jù)定義語言

    這篇文章主要介紹了MySQL數(shù)據(jù)庫之?dāng)?shù)據(jù)表操作DDL數(shù)據(jù)定義語言,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • 如何使用mysqladmin獲取一個(gè)mysql實(shí)例當(dāng)前的TPS和QPS

    如何使用mysqladmin獲取一個(gè)mysql實(shí)例當(dāng)前的TPS和QPS

    這篇文章主要介紹了如何使用mysqladmin這個(gè)工具來獲取一個(gè)mysql實(shí)例當(dāng)前的TPS和QPS,幫助大家更好的管理數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-11-11
  • MySQL中sum函數(shù)使用的實(shí)例教程

    MySQL中sum函數(shù)使用的實(shí)例教程

    這篇文章主要給大家介紹了關(guān)于MySQL中sum函數(shù)使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 使用mysqladmin檢測MySQL運(yùn)行狀態(tài)的教程

    使用mysqladmin檢測MySQL運(yùn)行狀態(tài)的教程

    這篇文章主要介紹了使用mysqladmin檢測MySQL運(yùn)行狀態(tài)的教程,包括mysqladmin工具簡單的awk使用,需要的朋友可以參考下
    2015-06-06
  • 關(guān)于pt-archiver和自增主鍵的那些事

    關(guān)于pt-archiver和自增主鍵的那些事

    mysql是我們經(jīng)常會(huì)用到的一個(gè)數(shù)據(jù)庫,mysql數(shù)據(jù)庫中有一個(gè)主鍵生成規(guī)則,就是自增,這篇文章主要給大家介紹了關(guān)于pt-archiver和自增主鍵的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • MySQL常用函數(shù)詳解之日期函數(shù)

    MySQL常用函數(shù)詳解之日期函數(shù)

    本文詳解MySQL日期函數(shù),涵蓋獲取、計(jì)算、格式化及比較,結(jié)合統(tǒng)計(jì)銷售額、計(jì)算注冊時(shí)長等實(shí)戰(zhàn)案例,幫助掌握日期處理技巧,感興趣的朋友一起看看吧
    2025-06-06
  • MySQL CRUD 查詢、插入、更新、刪除全實(shí)戰(zhàn)指南

    MySQL CRUD 查詢、插入、更新、刪除全實(shí)戰(zhàn)指南

    在 MySQL日常開發(fā)中CRUD是最核心的高頻操作,本文基于實(shí)戰(zhàn)場景,全面拆解MySQL的增刪改查操作,所有SQL語句均采用小寫形式,貼合實(shí)際開發(fā)規(guī)范,同時(shí)涵蓋聚合查詢、分組統(tǒng)計(jì)等進(jìn)階內(nèi)容,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • MySQL中VARCHAR與CHAR格式數(shù)據(jù)的區(qū)別

    MySQL中VARCHAR與CHAR格式數(shù)據(jù)的區(qū)別

    char是一種固定長度的類型,varchar則是一種可變長度的類型,那么他們具體使用過程中有什么區(qū)別嗎
    2015-09-09

最新評(píng)論

宁德市| 随州市| 宜城市| 阿克| 灵璧县| 永福县| 广昌县| 大埔县| 将乐县| 通榆县| 宁南县| 高台县| 沙洋县| 沁源县| 眉山市| 株洲县| 梅河口市| 庆阳市| 兴业县| 新平| 焦作市| 湘西| 监利县| 彩票| 宝山区| 安吉县| 乐昌市| 类乌齐县| 崇左市| 平南县| 遂平县| 英吉沙县| 顺义区| 梨树县| 包头市| 淄博市| 梁山县| 河池市| 杨浦区| 西吉县| 会理县|