mysql的主從配置沿用上一篇博客的配置:https://www.cnblogs.com/MasterSword/p/9434169.html mycat下載地址:http://www.mycat.io/ 試驗版本:Mycat-server-1.6-release <!-- mycat的預設用戶配置 ...
mysql的主從配置沿用上一篇博客的配置:https://www.cnblogs.com/MasterSword/p/9434169.html
mycat下載地址:http://www.mycat.io/
試驗版本:Mycat-server-1.6-release
# cd /usr/local # mv ~/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz /usr/local # tar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
# cd /usr/local/mycat/conf/
# vim server.xml 查看mycat用戶的預設配置
<!-- mycat的預設用戶配置,保持不變即可 -->
<user name="root">
<property name="password">123456</property>
<property name="schemas">TESTDB</property>
</user>
# vim schema.xml 修改schema配置讀寫分離
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
<!-- 設置物理表 -->
<table name="student" dataNode="dn1" />
</schema>
<!-- 設置物理庫 -->
<dataNode name="dn1" dataHost="localhost1" database="test" />
<!-- balance=1設置為讀寫分離 -->
<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="xxx.xxx.xxx.xxx:3306" user="root" password="xxxxxx">
<!-- 讀庫配置,可配置多個讀庫 -->
<readHost host="hostS2" url="xxx.xxx.xxx.xxx:3316" user="root" password="xxxxxx" />
</writeHost>
</dataHost>
</mycat:schema>
# cd ../bin
# ./mycat start 啟動mycat
# ps -aux | grep mycat 查看mycat是否啟動成功
在客戶端新建一個鏈接到mycat的資料庫連接,用戶名密碼為server.xml中配置的用戶
連接中庫為TESTDB,也是在server.xm中配置的
下麵驗證讀寫分離
mycat:
寫庫:
讀庫:
修改讀庫的數據:
mycat中的數據和讀庫數據一致:
停止讀庫的服務:
mycat插入一條數據:
寫庫中存在插入的數據:
至此通過mycat實現mysql的讀寫分離配置成功。
ps.mycat最大的功能在於對資料庫分片的處理,如果有機會,以後會進行相關的試驗。