資料庫配置讀寫分離後如何方便地從主庫中讀取資料
阿新 • • 發佈:2019-01-01
基於ThinkPHP5.1.15+MySQL演示主從同步配置與讀寫分離解決方案。
軟體環境:ThinkPHP5.1.15+MariaDB 10.1.30(主伺服器)+MySQL5.7(從伺服器)+Win10
兩臺伺服器IP分別為:192.168.199.234、192.168.199.237,已經為兩個資料庫建立了相同賬號密碼的賬戶。
首先我在TP專案的資料庫配置檔案中,設定了主從配置以及讀寫分離,配置程式碼如下:
第二步,修改主伺服器的MySQL配置檔案my.ini,主要程式碼如下:
第69行程式碼是啟用二進位制日誌
第三步,通過show master status;查詢主庫狀態,記錄一下二進位制日誌檔案和位置,在從伺服器配置的時候要用。
第三步,修改從伺服器資料庫配置的server-id
預設情況下,server-id都是1,如果要設定主從必須要儲存兩臺的server-id不同,因此只需改從伺服器就可以,儲存重啟MySQL服務:
第四步,在從伺服器上設定同步命令
其中,MASTER_LOG_FILE和MASTER_LOG_POS是第二步查詢的結果。
第五步,啟動slave進行
在從伺服器上執行start slave;命令
然後執行show slave status命令,檢視slave同步狀態。如果Query OK,表示配置正確。
第六步,驗證主從配置
在主庫上執行一個update或者insert操作,驗證一下資料。
我在後臺系統設定中更新一下網站資訊
根據日誌可以看得出,已經實現了主從伺服器以及讀寫分離