當(dāng)前位置:首頁(yè) >  站長(zhǎng) >  數(shù)據(jù)庫(kù) >  正文

MySQL主從復(fù)制原理以及需要注意的地方

 2020-11-27 13:40  來(lái)源: 腳本之家   我來(lái)投稿 撤稿糾錯(cuò)

  域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)

這篇文章主要介紹了MySQL主從復(fù)制原理以及需要注意的地方,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下

寫在前面

最近在寫Mycat專題,由于不少小伙伴最近要出去面試,問(wèn)我能不能簡(jiǎn)單寫下MySQL的主從復(fù)制原理和注意事項(xiàng),因?yàn)樵谥暗拿嬖囍斜粏?wèn)到了這些問(wèn)題。我:可以啊,安排上了?。?/p>

主從復(fù)制原理

(1) Master 將數(shù)據(jù)改變記錄到二進(jìn)制日志(binary log)中,也就是配置文件 log-bin 指定的文件, 這些記錄叫做二進(jìn)制日志事件(binary log events);

(2) Slave 通過(guò) I/O 線程讀取 Master 中的 binary log events 并寫入到它的中繼日志(relay log);

(3) Slave 重做中繼日志中的事件,把中繼日志中的事件信息一條一條的在本地執(zhí)行一次,完 成數(shù)據(jù)在本地的存儲(chǔ),從而實(shí)現(xiàn)將改變反映到它自己的數(shù)據(jù)(數(shù)據(jù)重放)。

 注意事項(xiàng)

(1)主從服務(wù)器操作系統(tǒng)版本和位數(shù)一致;

(2) Master 和 Slave 數(shù)據(jù)庫(kù)的版本要一致;

(3) Master 和 Slave 數(shù)據(jù)庫(kù)中的數(shù)據(jù)要一致;

(4) Master 開啟二進(jìn)制日志,Master 和 Slave 的 server_id 在局域網(wǎng)內(nèi)必須唯一;

配置主從復(fù)制步驟

Master數(shù)據(jù)庫(kù)

(1) 安裝數(shù)據(jù)庫(kù);

(2) 修改數(shù)據(jù)庫(kù)配置文件,指明 server_id,開啟二進(jìn)制日志(log-bin);

(3) 啟動(dòng)數(shù)據(jù)庫(kù),查看當(dāng)前是哪個(gè)日志,position 號(hào)是多少;

(4) 登錄數(shù)據(jù)庫(kù),授權(quán)數(shù)據(jù)復(fù)制用戶(IP 地址為從機(jī) IP 地址,如果是雙向主從,這里的 還需要授權(quán)本機(jī)的 IP 地址,此時(shí)自己的 IP 地址就是從 IP 地址);

(5) 備份數(shù)據(jù)庫(kù)(記得加鎖和解鎖);

(6) 傳送備份數(shù)據(jù)到 Slave 上;

(7) 啟動(dòng)數(shù)據(jù)庫(kù);

以上步驟,為單向主從搭建成功,想搭建雙向主從需要的步驟:

(1) 登錄數(shù)據(jù)庫(kù),指定 Master 的地址、用戶、密碼等信息(此步僅雙向主從時(shí)需要);

(2) 開啟同步,查看狀態(tài);

Slave 上的配置

(1) 安裝數(shù)據(jù)庫(kù);

(2) 修改數(shù)據(jù)庫(kù)配置文件,指明 server_id(如果是搭建雙向主從的話,也要開啟二進(jìn)制 日志 log-bin);

(3) 啟動(dòng)數(shù)據(jù)庫(kù),還原備份;

(4) 查看當(dāng)前是哪個(gè)日志,position 號(hào)是多少(單向主從此步不需要,雙向主從需要);

(5) 指定 Master 的地址、用戶、密碼等信息;

(6) 開啟同步,查看狀態(tài)。

好了,今天就到這兒吧,后續(xù)我們實(shí)戰(zhàn)以各種方式實(shí)現(xiàn)MySQL主從復(fù)制,我是冰河,我們下期見??!

以上就是MySQL主從復(fù)制原理以及需要注意的地方的詳細(xì)內(nèi)容,更多關(guān)于MySQL 主從復(fù)制的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

來(lái)源:腳本之家

鏈接:https://www.jb51.net/article/199883.htm

申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
mysql

相關(guān)文章

  • MySQL5.7 集群配置的步驟

    這篇文章主要介紹了MySQL5.7集群配置的步驟,幫助大家更好的理解和學(xué)習(xí)使用MySQL,感興趣的朋友可以了解下

    標(biāo)簽:
    mysql
  • MySQL中觸發(fā)器和游標(biāo)的介紹與使用

    這篇文章主要給大家介紹了關(guān)于MySQL中觸發(fā)器和游標(biāo)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

    標(biāo)簽:
    mysql
  • MySQL中exists、in及any的基本用法

    這篇文章主要給大家介紹了關(guān)于MySQL中exists、in及any的基本用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

    標(biāo)簽:
    mysql
  • MySQL正確修改最大連接數(shù)的3種方案

    這篇文章主要給大家介紹了關(guān)于MySQL正確修改最大連接數(shù)的3種方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

    標(biāo)簽:
    mysql
  • 教你怎么在Windows系統(tǒng)上手動(dòng)搭建MySql數(shù)據(jù)庫(kù)

    1.已經(jīng)購(gòu)買好的騰訊云輕量應(yīng)用服務(wù)器。2.作者本次演示使用的系統(tǒng)是WindowsServer2019,其他windows版本也可以,操作流程大同小異。3.使用Windows遠(yuǎn)程桌面連接騰訊云輕量服務(wù)器。

熱門排行

信息推薦