0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

mysql主從復(fù)制三種模式

科技綠洲 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2023-11-16 14:04 ? 次閱讀

MySQL主從復(fù)制是一種常見的數(shù)據(jù)同步方式,它可以實現(xiàn)將一個數(shù)據(jù)庫的更改同步到其他多個數(shù)據(jù)庫的功能。主從復(fù)制可以提高數(shù)據(jù)庫的可用性和性能,以及提供故障恢復(fù)和數(shù)據(jù)備份的支持。在MySQL中,有三種主從復(fù)制模式:單主從模式、主從級聯(lián)模式和組復(fù)制模式。

一、單主從模式:
單主從模式是最簡單的主從復(fù)制模式。在這種模式下,存在一個主數(shù)據(jù)庫(Master)和一個或多個從數(shù)據(jù)庫(Slave)。主數(shù)據(jù)庫負責(zé)處理所有客戶端的寫請求,它將所有更改記錄到二進制日志(Binary Log)中,并將二進制日志傳輸?shù)綇臄?shù)據(jù)庫進行重放。從數(shù)據(jù)庫通過解析二進制日志來復(fù)制主數(shù)據(jù)庫的更改,并將這些更改應(yīng)用到自己的數(shù)據(jù)庫中。這種模式下的主從復(fù)制是一對一的,即一個主數(shù)據(jù)庫對應(yīng)一個從數(shù)據(jù)庫。
實現(xiàn)主從復(fù)制的步驟如下:

  1. 在主數(shù)據(jù)庫上設(shè)置二進制日志(開啟binlog);
  2. 在從數(shù)據(jù)庫上設(shè)置主庫的連接信息,如主庫的IP地址、用戶名、密碼等;
  3. 從數(shù)據(jù)庫連接主數(shù)據(jù)庫,并從主數(shù)據(jù)庫獲取二進制日志,并進行重放。

單主從模式的主要特點如下:

  1. 簡單易懂,易于部署和維護;
  2. 可以實時復(fù)制主數(shù)據(jù)庫的更改到從數(shù)據(jù)庫,從而實現(xiàn)讀寫分離,提高數(shù)據(jù)庫的性能;
  3. 可以創(chuàng)建多個從數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)備份和故障恢復(fù);
  4. 缺點是主從復(fù)制存在延遲,即從數(shù)據(jù)庫的數(shù)據(jù)會有一定的滯后。

二、主從級聯(lián)模式:
主從級聯(lián)模式是在單主從模式的基礎(chǔ)上進行擴展的一種模式。在這種模式下,存在一個主數(shù)據(jù)庫和多個從數(shù)據(jù)庫,從數(shù)據(jù)庫也可以作為其他從數(shù)據(jù)庫的主數(shù)據(jù)庫,形成級聯(lián)關(guān)系。當(dāng)主數(shù)據(jù)庫發(fā)生故障時,可以通過級聯(lián)關(guān)系自動切換到其他從數(shù)據(jù)庫作為新的主數(shù)據(jù)庫。
實現(xiàn)主從級聯(lián)模式的步驟如下:

  1. 在主數(shù)據(jù)庫上設(shè)置二進制日志;
  2. 在從數(shù)據(jù)庫上設(shè)置主庫的連接信息,并配置主從復(fù)制;
  3. 配置從數(shù)據(jù)庫可以作為其他從數(shù)據(jù)庫的主數(shù)據(jù)庫;
  4. 當(dāng)主數(shù)據(jù)庫發(fā)生故障時,其他從數(shù)據(jù)庫會自動切換為新的主數(shù)據(jù)庫。

主從級聯(lián)模式的主要特點如下:

  1. 可以實現(xiàn)高可用性和故障恢復(fù),當(dāng)主數(shù)據(jù)庫發(fā)生故障時,可以自動切換到其他從數(shù)據(jù)庫;
  2. 可以靈活擴展,通過級聯(lián)關(guān)系可以構(gòu)建多層級的主從關(guān)系;
  3. 適用于大規(guī)模數(shù)據(jù)庫集群,可以實現(xiàn)數(shù)據(jù)的多副本分布存儲。

三、組復(fù)制模式:
組復(fù)制模式是MySQL 5.7版本引入的一種新的主從復(fù)制模式。在這種模式下,數(shù)據(jù)庫被劃分為多個分片(Shard),每個分片都有一個主庫和多個從庫。所有主庫共同組成一個復(fù)制組(Replication Group),從庫可以連接主庫進行復(fù)制,并在主庫發(fā)生故障時自動選舉新的主庫。
實現(xiàn)組復(fù)制模式的步驟如下:

  1. 配置MySQL實例,將每個實例劃分為一個分片;
  2. 將每個分片的實例作為一個組的成員,創(chuàng)建復(fù)制組;
  3. 配置每個分片的主庫和從庫,并設(shè)置自動故障切換。

組復(fù)制模式的主要特點如下:

  1. 可以實現(xiàn)高可用性和故障恢復(fù),當(dāng)主庫發(fā)生故障時,自動選舉新的主庫;
  2. 支持動態(tài)增加和刪除實例,在復(fù)制組中擴展和縮減分片;
  3. 可以實現(xiàn)讀寫分離,從庫可以同時處理讀請求,提高數(shù)據(jù)庫的性能;
  4. 可以實現(xiàn)分布式數(shù)據(jù)庫的數(shù)據(jù)一致性。

綜上所述,MySQL主從復(fù)制提供了三種不同的復(fù)制模式,包括單主從模式、主從級聯(lián)模式和組復(fù)制模式。這三種模式都可以用于實現(xiàn)數(shù)據(jù)的同步復(fù)制,提高數(shù)據(jù)庫的可用性和性能。選擇適合的模式需要考慮到數(shù)據(jù)庫規(guī)模、可用性要求、性能要求等因素。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)庫
    +關(guān)注

    關(guān)注

    7

    文章

    3799

    瀏覽量

    64389
  • ip地址
    +關(guān)注

    關(guān)注

    0

    文章

    303

    瀏覽量

    17055
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    809

    瀏覽量

    26569
  • 日志
    +關(guān)注

    關(guān)注

    0

    文章

    138

    瀏覽量

    10643
收藏 人收藏

    評論

    相關(guān)推薦

    Mysql如何實現(xiàn)雙向互為主從復(fù)制?

    機器上得到的偏移量如果是基于GTID的主從復(fù)制 不用找binglog 和pos點master_auto_position=1;#加上這個參數(shù)就可以
    發(fā)表于 06-22 17:48

    基于二進制安裝MySQL主從復(fù)制

    二進制安裝MySQL實現(xiàn)主從復(fù)制
    發(fā)表于 03-10 09:43

    mysql主從復(fù)制

    mysql 主從復(fù)制
    發(fā)表于 04-28 14:30

    基于mycat的Mysql主從復(fù)制讀寫分離全攻略

    基于mycat的Mysql主從復(fù)制讀寫分離全攻略
    發(fā)表于 09-08 10:10 ?4次下載
    基于mycat的<b class='flag-5'>Mysql</b><b class='flag-5'>主從復(fù)制</b>讀寫分離全攻略

    利用MySQL進行一主一從的主從復(fù)制

    本文講述了如何使用MyBatisPlus+ShardingSphereJDBC進行讀寫分離,以及利用MySQL進行一主一從的主從復(fù)制。
    的頭像 發(fā)表于 07-28 09:47 ?1038次閱讀

    MySQL主從復(fù)制原理詳解

    簡單講,MySQL主從復(fù)制就是數(shù)據(jù)寫入一臺服務(wù)器(主服務(wù)器)后,同時還會額外寫入另外的服務(wù)器(從服務(wù)器)。也就是說數(shù)據(jù)會寫多份,這樣做的目的主要有兩個:
    的頭像 發(fā)表于 02-06 10:27 ?1089次閱讀

    一個操作把MySQL主從復(fù)制整崩了

    最近公司某項目上反饋mysql主從復(fù)制失敗,被運維部門記了一次大過,影響到了項目的驗收推進,那么究竟是什么原因?qū)е碌哪兀慷?b class='flag-5'>主從復(fù)制的原理又是什么呢?本文就對排查分析的過程做一個記錄。
    的頭像 發(fā)表于 05-11 11:14 ?549次閱讀
    一個操作把<b class='flag-5'>MySQL</b><b class='flag-5'>主從復(fù)制</b>整崩了

    聊聊RocketMQ的主從復(fù)制

    RocketMQ 主從復(fù)制是 RocketMQ 高可用機制之一,數(shù)據(jù)可以從主節(jié)點復(fù)制到一個或多個從節(jié)點。
    的頭像 發(fā)表于 07-04 09:42 ?629次閱讀
    聊聊RocketMQ的<b class='flag-5'>主從復(fù)制</b>

    什么是Redis主從復(fù)制

    Redis主從復(fù)制 來自靈魂的拷問:什么是Redis主從復(fù)制? 簡言之就是: 主對外從對內(nèi),主可寫從不可寫 主掛了,從不可為主 看下面的圖加深下理解: 對,你沒看錯,Redis主從復(fù)制沒有動態(tài)選舉
    的頭像 發(fā)表于 10-09 15:09 ?420次閱讀
    什么是Redis<b class='flag-5'>主從復(fù)制</b>

    mysql如何實現(xiàn)主從復(fù)制的具體流程

    主從復(fù)制MySQL數(shù)據(jù)庫中常用的數(shù)據(jù)復(fù)制技術(shù)之一,它的主要目的是將一個數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)復(fù)制到其他服務(wù)器上,以實現(xiàn)數(shù)據(jù)的備份、高可用和分布式部署。下面將詳細介紹
    的頭像 發(fā)表于 11-16 14:10 ?787次閱讀

    mysql主從復(fù)制主要有幾種模式

    MySQL主從復(fù)制MySQL數(shù)據(jù)庫中常用的一數(shù)據(jù)復(fù)制方式,用于實現(xiàn)數(shù)據(jù)的備份、負載均衡、故障恢復(fù)等目的。
    的頭像 發(fā)表于 11-16 14:15 ?1175次閱讀

    mysql主從復(fù)制的原理

    MySQL主從復(fù)制是一數(shù)據(jù)庫復(fù)制技術(shù),它允許將一個MySQL數(shù)據(jù)庫的更新操作自動復(fù)制到其他
    的頭像 發(fā)表于 11-16 14:18 ?492次閱讀

    mysql主從復(fù)制 混合類型的復(fù)制

    MySQL主從復(fù)制是一常用的數(shù)據(jù)復(fù)制技術(shù),可以實現(xiàn)數(shù)據(jù)從一個MySQL服務(wù)器(主服務(wù)器)復(fù)制
    的頭像 發(fā)表于 11-16 14:20 ?558次閱讀

    mysql主從復(fù)制數(shù)據(jù)不一致怎么辦

    MySQL主從復(fù)制是一常用的數(shù)據(jù)復(fù)制技術(shù),用于實現(xiàn)數(shù)據(jù)的實時同步和分布式部署。然而,在實際應(yīng)用中,主從復(fù)制過程中出現(xiàn)數(shù)據(jù)不一致的情況也是很
    的頭像 發(fā)表于 11-16 14:35 ?2401次閱讀

    配置MySQL主從復(fù)制和讀寫分離

    配置MySQL主從復(fù)制和讀寫分離
    的頭像 發(fā)表于 10-23 11:44 ?450次閱讀
    配置<b class='flag-5'>MySQL</b><b class='flag-5'>主從復(fù)制</b>和讀寫分離