mysql的主主複製模型

來源:互聯網
上載者:User

標籤:mysql的雙主複製

示範mysql的雙主複製的模型:

物理機為win7,虛擬機器是2台centos7

節點1:192.168.255.2

節點2:192.168.255.3


yum安裝mariadb-server5.5



配置節點1:

]# vim /etc/my.cnf

650) this.width=650;" src="http://s1.51cto.com/wyfs02/M00/82/8B/wKiom1dYT6bwzlf4AABqi3ptfsM606.png" title="1.png" alt="wKiom1dYT6bwzlf4AABqi3ptfsM606.png" />


配置節點2

]# vim /etc/my.cnf

650) this.width=650;" src="http://s5.51cto.com/wyfs02/M00/82/89/wKioL1dYULmj_A4lAACHhhBi1yA503.png" title="2.png" alt="wKioL1dYULmj_A4lAACHhhBi1yA503.png" />


分別啟動mysql服務:

]# systemctl start mariadb.service


分別在兩節點上:設定複製許可權的帳號:

> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO ‘repluser‘@‘192.168.255.%‘ IDENTIFIED BY ‘replpass‘;

> FLUSH PRIVILEGES;


注意:在實際工作中,只能授權單個IP,不能是萬用字元的形式授權;如果有多個ip,就每個ip單獨執行一遍授權語句;


然後,設定兩個節點都指向對方為主節點;

提前記錄好對方的二進位記錄檔事務所處的位置;然後就從這個位置開始複製:


節點1:查看並記錄二進位記錄檔事務所處的位置

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M00/82/89/wKioL1dYUePBK28sAAAWJnmsvdM967.png" title="3.png" width="700" height="138" border="0" hspace="0" vspace="0" style="width:700px;height:138px;" alt="wKioL1dYUePBK28sAAAWJnmsvdM967.png" />

記錄位置為499,將在節點2設定時使用;


節點2:查看並記錄二進位記錄檔事務所處的位置

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M01/82/89/wKioL1dYUrKCaIzRAAAVaGiFhss174.png" title="4.png" width="700" height="139" border="0" hspace="0" vspace="0" style="width:700px;height:139px;" alt="wKioL1dYUrKCaIzRAAAVaGiFhss174.png" />

記錄位置為509,將在節點1設定時使用;


設定節點1:

> CHANGE MASTER TO MASTER_HOST=‘192.168.255.3‘,MASTER_USER=‘repluser‘,MASTER_PASSWORD=‘replpass‘,MASTER_LOG_FILE=‘master-bin.000003‘,MASTER_LOG_POS=509;


設定節點2:

> CHANGE MASTER TO MASTER_HOST=‘192.168.255.2‘,MASTER_USER=‘repluser‘,MASTER_PASSWORD=‘replpass‘,MASTER_LOG_FILE=‘master-bin.000003‘,MASTER_LOG_POS=499;


分別在兩節點上:設定

> START SLAVE;


此時,在兩節點均可查看:

650) this.width=650;" src="http://s5.51cto.com/wyfs02/M02/82/8B/wKiom1dYU9vTDLX5AACti_E5HSU330.png" style="width:700px;height:843px;" title="5.png" width="700" height="843" border="0" hspace="0" vspace="0" alt="wKiom1dYU9vTDLX5AACti_E5HSU330.png" />

650) this.width=650;" src="http://s2.51cto.com/wyfs02/M01/82/89/wKioL1dYVOWgch3oAACqfz3JpNY161.png" style="width:700px;height:814px;" title="6.png" width="700" height="814" border="0" hspace="0" vspace="0" alt="wKioL1dYVOWgch3oAACqfz3JpNY161.png" />

顯示內容和主從複製基本相同,只不過都是互為雙主的模型;


此時,雙主模型配置完成,雙方都可以通過對方複製了;


驗證雙主:

例如在節點1,建立一個新庫:

> CREATE DATABASE mydb;

並查看節點1的狀態:

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M02/82/8B/wKiom1dYVhHjEA5gAACv04w4Mw8149.png" title="7.png" alt="wKiom1dYVhHjEA5gAACv04w4Mw8149.png" />


在節點2:

查看狀態:

650) this.width=650;" src="http://s1.51cto.com/wyfs02/M00/82/8B/wKiom1dYVq3AN-_tAACpO2DgCsE275.png" title="8.png" width="723" height="831" border="0" hspace="0" vspace="0" style="width:723px;height:831px;" alt="wKiom1dYVq3AN-_tAACpO2DgCsE275.png" />

查看同步到的新庫:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/82/89/wKioL1dYWAHTE23fAAArFLBL5DQ790.png" title="9.png" alt="wKioL1dYWAHTE23fAAArFLBL5DQ790.png" />

此時,已經驗證了節點1寫操作後,節點2同步節點1後完成資料備份;


再驗證節點2發生寫操作後,節點1同步節點2後完成數備份;

在節點2:

在新庫中建立表:

> use mydb

> CREATE TABLE tb1 (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,name CHAR(30));

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/82/8B/wKiom1dYWKrAhGiGAAAcobYn8TU126.png" title="10.png" width="720" height="162" border="0" hspace="0" vspace="0" style="width:720px;height:162px;" alt="wKiom1dYWKrAhGiGAAAcobYn8TU126.png" />


查看節點2狀態:

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M00/82/89/wKioL1dYWjzTQYMnAAAWN7ziynI710.png" title="11.png" width="723" height="151" border="0" hspace="0" vspace="0" style="width:723px;height:151px;" alt="wKioL1dYWjzTQYMnAAAWN7ziynI710.png" />


到節點1上查看同步後的結果:

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M00/82/89/wKioL1dYWrjRALKgAACbrWPghRg939.png" title="12.png" alt="wKioL1dYWrjRALKgAACbrWPghRg939.png" />


查看同步到的表:

650) this.width=650;" src="http://s2.51cto.com/wyfs02/M01/82/8B/wKiom1dYWk7Cywf5AABMssuS_R4421.png" title="13.png" alt="wKiom1dYWk7Cywf5AABMssuS_R4421.png" />


繼續驗證自動成長位移量:

繼續在節點1:給欄位插入新值

> INSERT INTO tb1 (name) VALUES (‘Kobe Byrant‘),(‘Michael Jordan‘),(‘Yao Ming‘);

650) this.width=650;" src="http://s1.51cto.com/wyfs02/M01/82/89/wKioL1dYXJmy8dStAAActmBY8gA472.png" title="14.png" alt="wKioL1dYXJmy8dStAAActmBY8gA472.png" />


在節點2:

也給欄位插入新值,驗證自動成長位移量不會出現重複的id

> INSERT INTO tb1 (name) VALUES (‘Zhu Uuanzhang‘),(‘Zhu Di‘),(‘Zhu Yue‘);

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M01/82/8B/wKiom1dYXA7BZlNCAAAZIJGFfCY509.png" title="15.png" alt="wKiom1dYXA7BZlNCAAAZIJGFfCY509.png" />

可驗證,自動成長位移量實現當兩邊分別插入新值後,id不會重複;


以上就是mysql主主複製模型的配置實現完成。

mysql的主主複製模型

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.