(二)mycat搭建主從複製,實現讀寫分離
阿新 • • 發佈:2018-11-28
環境準備
準備三臺linux伺服器,mycat、mycatmaster、mycatslave,分別安裝好mycat服務、mysql服務、mysql服務
mycatmaster和mycatslave基於binlog實現主從複製,見主從複製搭建
mycat配置
mycat權威指南中配置讀寫分離是這樣的:
以上兩種取模第一種當寫掛了讀不可用,第二種可以繼續使用,事務內部的一切操作都會走寫節點,所以讀 操作不要加事務。
下面我就按第一種來配置,修改mycat配置檔案schema.xml檔案,修改寫節點和讀節點資訊:
cd /usr/local/mycat/conf
vi schema.xml
然後啟動mycat
啟動之後我們用mysql客戶端或者mysql服務連線mycat:
注意要在兩個讀寫分離的庫中先建立好schema.xml配置的資料庫,這裡為db1、db2、db3
連線好之後可以看到mycat中的資料庫和表,都是mycat配置中虛擬的:
然後再mycat中建立一張表:
插入資料
即可完成mycat的主從複製配置。
畫個圖總結一下:
沒有使用mycat實現讀寫分離時,需要程式來區分好讀寫庫,在程式中定義讀的datasource和寫的datasource;
使用mycat後,web程式只需要連線mycat,不需要區分讀寫操作,mycat會自動定位到讀庫和寫庫