Mycat實現Mysql數據庫讀寫分離
阿新 • • 發佈:2018-08-09
測試 9.png http company 分片 col windows版本 更多 win
Linux和Windows環境下搭建Mycat數據讀寫分離
前提需要:1.服務器裝有JVM虛擬機,就是JDK。2.兩個Mysql數據庫已經實現主從復制,參考:https://www.cnblogs.com/zwcry/p/9407810.html
主庫:129
從庫:130
一、Mycat安裝,官網:http://www.mycat.io/,下載地址http://dl.mycat.io/1.6-RELEASE/,這個是1.6版本,含有windows和linux版本。
1.windows版本
下載-》解壓
啟動:mycat/bin/目錄,雙擊startup_nowrap.bat
2.linux版本
下載-》解壓
下載到/home/install目錄下
解壓到/usr/local/mycat目錄下
啟動:進入bin目錄 cd /usr/local/mycat/bin/ ,執行./mycat start
3.其他
二、讀寫分離配置(Mycat支持集群,多主多從),這裏只寫單主但從配置
1.配置簡述
--server.xml:是Mycat服務器參數調整和用戶授權的配置文件。 --schema.xml:是邏輯庫定義和表以及分片定義的配置文件。 --rule.xml: 是分片規則的配置文件,分片規則的具體一些參數信息單獨存放為文件,也在這個目錄下,配置文件修改需要重啟MyCAT。--log4j.xml: 日誌存放在logs/log中,每天一個文件,日誌的配置是在conf/log4j.xml中,根據自己的需要可以調整輸出級別為debug debug級別下,會輸出更多的信息,方便排查問題。 --autopartition-long.txt,partition-hash-int.txt,sequence_conf.properties, sequence_db_conf.properties 分片相關的id分片規則配置文件 --lib MyCAT自身的jar包或依賴的jar包的存放目錄。 --logs MyCAT日誌的存放目錄。日誌存放在logs/log中,每天一個文件
2.server.xml配置
2.server.xml配置
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mycat:server SYSTEM "server.dtd"> <mycat:server xmlns:mycat="http://io.mycat/"> <system> <property name="defaultSqlParser">druidparser</property> </system> <user name="root"> <property name="password">123456</property> <property name="schemas">MS</property> </user> <user name="user"> <property name="password">123456</property> <property name="schemas">MS</property> <property name="readOnly">true</property> </user> </mycat:server>
3.schema.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="MS" checkSQLschema="true" sqlMaxLimit="100"> <table name="company" primaryKey="id" dataNode="dn1" /> </schema> <dataNode name="dn1" dataHost="localhost1" database="ms" /> <dataHost name="localhost1" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="hostM1" url="192.168.159.129:3306" user="root" password="123456"> <readHost host="hostS2" url="192.168.159.130:3306" user="root" password="123456" /> </writeHost> </dataHost> </mycat:schema>
4.其他
其他配置屬性,可參照源文件註釋,簡單的讀寫分離,這些就可以了。
三、連接Mycat,測試
1.連接
2.測試
Mycat實現Mysql數據庫讀寫分離