半同步複製是在主從同步複製的基礎之上,主從同步前面我的博文有介紹 Semisynchronous Replication(半同步複製)則一定程度上保證提交的事務已經傳給了至少一個備庫 MySQL在載入並開啟Semi-sync插件後,每一個提交的事務需等待至少一個備庫接收日誌後才返回給客戶端。如果做的 ...
半同步複製是在主從同步複製的基礎之上,主從同步前面我的博文有介紹
Semisynchronous Replication(半同步複製)則一定程度上保證提交的事務已經傳給了至少一個備庫
MySQL在載入並開啟Semi-sync插件後,每一個提交的事務需等待至少一個備庫接收日誌後才返回給客戶端。如果做的是小事務,兩
台主機的網路延遲又較小,則Semi-sync可以實現在性能很小損失的情況下的零數據丟失(為了減少網路延遲建議此兩台伺服器放在同
一個機架上)
主伺服器上執行以下命令:
MariaDB [(none)]> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
SET GLOBAL rpl_semi_sync_master_enabled=1;
SET GLOBAL rpl_semi_sync_master_timeout=5000; (如果5秒鐘同步未成功自動降級為預設的非同步)
rpl_semi_sync_master_enabled | ON 開啟了半同步
Rpl_semi_sync_master_clients | 1 證明主從半同步複製連接成功
從伺服器上執行以下命令:
MariaDB [(none)]> INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
SET GLOBAL rpl_semi_sync_slave_enabled=1;
如果要使mariadb重啟後也有效,需把上面的參數寫入配置文件中