MySQL伺服器雙機熱備(主從複製)?

伺服器雙機熱備可以預防主伺服器意外宕機導致的資料丟失,在主、從伺服器部署雙機熱備後,主伺服器資料庫裡的變化會“對映”到從伺服器的資料庫裡,這樣可以在遇到異常時快速恢復資料。

工具/原料

MS Windows Server 2008 R2

.NET Framework4.0

mysql_installer_community_V5.6.21.1安裝包或其它版本的MySQL安裝包

方法/步驟

安裝環境:主伺服器、從(備用)伺服器上依次安裝.NET Framework4.0與同一版本的MySQL如MySQL5.6,必須確保主從伺服器的MySQL版本一致。

準備資料庫:確保主從伺服器的MySQL資料庫中資料的一致性。

找到配置檔案my.ini(兩臺伺服器):

①開啟MySQL5.6命令列,輸入密碼後回車,然後輸入select @@basedir;回車,可以看到MySQL5.6的安裝目錄如 C:\Program Files\MySQL\MySQL Server 5.6\,如下圖,

②然後在 C:\ProgramData\MySQL\MySQL Server 5.6\下找到my.ini配置檔案並用記事本開啟。

MySQL伺服器雙機熱備(主從複製)

修改配置檔案(主伺服器):最好先備份一份,以防萬一;以下四個屬性有就修改,沒有就新增,如下圖。

①找到[mysqld]下的server-id設定服務ID為本機的IP最後一位如server-id=132

②設定日誌檔名如:log_bin=mysql-log

③設定目標資料庫名如:binlog-do-db=test

④設定同步資料庫函式或儲存過程:log_bin_trust_function_creators=TRUE

然後儲存,重啟MySQL5.6服務。

MySQL伺服器雙機熱備(主從複製)

修改配置檔案(從伺服器):

①設定一下server-id為本機IP最後一位即可(注意不可與主伺服器的server-id相同),

②然後儲存,重啟MySQL5.6服務。

主伺服器資料庫新增備份使用者:

①開啟MySQL5.6命令列,輸入密碼後回車,

②然後輸入grant replication slave on *.* to '資料庫使用者名稱'@'%' identified by '密碼';回車執行(賦予此使用者“主從複製”許可權)。

從伺服器資料庫設定為Slave:

①事先在主伺服器上執行MySQL5.6命令列show master status;查詢日誌名和位置,如下圖;

②在從伺服器上執行MySQL5.6命令列

change master to

master_host='192.168.10.132',

master_user='資料庫使用者名稱',

master_password='密碼',

master_log_file='mysql-log.000029',

master_log_pos=21027;回車執行

③開啟Slave(開啟前確保倆伺服器資料庫資料一致)命令列:start slave;回車執行即開啟了主從複製。

MySQL伺服器雙機熱備(主從複製)

驗證:

①在從伺服器上輸入命令列:show slave status \G;回車,如下圖

確認以下兩項為Yes

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

②修改主伺服器資料(表資料和儲存過程)驗證是否在從伺服器上是否體現。

MySQL伺服器雙機熱備(主從複製)

THE END , THANKS !

注意事項

1.必須確保主從伺服器的MySQL版本一致;

2.開啟Slave前需確保主從伺服器資料庫資料一致。

相關問題答案