Mysql 半同步複製配置

來源:互聯網
上載者:User

標籤:

以下是配置和監控半同步複製:

1. 半同步複製功能以plugin的方式接入MySQL,需要在主庫與從庫兩端同時開啟半同步的支援,具體配置如下:

On the master

mysql> INSTALL PLUGIN rpl_semi_sync_master SONAME ‘semisync_master.so’;

mysql> SET GLOBAL rpl_semi_sync_master_enabled = 1;

mysql> SET GLOBAL rpl_semi_sync_master_timeout = 1000;  # 1 second

On the slave

mysql> INSTALL PLUGIN rpl_semi_sync_slave SONAME ‘semisync_slave.so’;

mysql> SET GLOBAL rpl_semi_sync_slave_enabled = 1;

mysql> START SLAVE;

NOTE: SLAVE端需要先開啟半同步參數,然後啟動從庫複製,否則,Rpl_semi_sync_slave_status的狀態始終為:OFF

2. 通過以下參數可以判斷半同步是否正常:

Rpl_semi_sync_master_status -- 判斷主庫當前模式為半同步還是非同步複製

Rpl_semi_sync_master_clients -- 當前處於半同步狀態的從庫個數

Rpl_semi_sync_master_yes_tx,Rpl_semi_sync_master_no_tx -- 主庫收到正常確認以及逾時未成功確認的事務個數

Rpl_semi_sync_slave_status -- 從庫半同步複製是否正常,當io_thread為NO時,狀態為OFF

查看半同步相關參數及狀態參數命令:

mysql> SHOW VARIABLES LIKE ‘rpl_semi_sync%’;

mysql> SHOW STATUS LIKE ‘Rpl_semi_sync%’;

-TAKE AWAY-

半同步複製使MHA更加完美

在之前的文章中曾和大家分享過MHA這種高可用的主從自動的failover方案,而這裡說的半同步複製對於MHA是一個很有利的支援。

半同步可以最大程度的保障主庫執行過的語句被成功複製到從庫relay log中;而當主庫發生故障時,使從庫的狀態更接近主庫,保持最小的資料差異。基於半同步這個特點,可以將其與MHA一起使用,當主庫故障,故障自動切換被觸發,在這個過程中MHA需要比較主庫與從庫日誌差異,由於半同步的特點,差異日誌會儘可能的少,那麼MHA在進行判斷比較、差異產生、拷貝直至最後的差異應用,這一系列的時間消耗都會得到縮減,這樣MHA的切換時間就相應減少,資料庫故障可以快速恢複。

正常情況下,主庫寫入binlog日誌的pos位置與從庫讀到的Read_Master_Log_Pos位置應該保持一致;測試中發現,當主庫被意外關掉,仍存在少量的跟新語句沒有被同步過去,這一點在手冊裡面有提及(If the master commits but a crash occurs while the master is waiting for acknowledgment from a slave, it is possible that the transaction may not have reached any slave.)

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.