1. 程式人生 > >(二)mycat搭建主從複製,實現讀寫分離

(二)mycat搭建主從複製,實現讀寫分離

環境準備

準備三臺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會自動定位到讀庫和寫庫