#在服務端實現讀寫分離
注意:mysql的主從配置可以看:https://www.cnblogs.com/ywjfx/p/10264383.html
1、安裝mycat1.6
下載地址:http://dl.mycat.io/
2、創建mycat用戶和密碼
useradd mycat
passwd mycat
3、mycat schema.xml 配置
<?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"> </schema> <dataNode name="dn1" dataHost="172.16.3.179" database="test" /> <!--###dataHost,主庫ip地址,database,主庫的數據庫 --> <dataHost name="172.16.3.179" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="-1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <!-- can have multi write hosts --> <!--writeHost:主庫的ip地址、url、user、password--> <writeHost host="172.16.3.179" url="172.16.3.179:3306" user="root" password="yang156122"> <!-- can have multi read hosts --> <!--writeHost:主庫的ip地址、url、user、password-->
<readHost host="172.16.3.180" url="172.16.3.180:3306" user="root" password="yang156122" />
</writeHost>
</dataHost>
</mycat:schema>
4、mycat server.xml 配置
<user name="mycat"> <!--##在mycat主機上用戶 --> <property name="password">yang156122</property> <!-- ##在mycat主機上密碼 --> <property name="schemas">TESTDB</property> <!-- 表級 DML 權限設置 --> <!-- <privileges check="false"> <schema name="TESTDB" dml="0110" > <table name="tb01" dml="0000"></table> <table name="tb02" dml="1111"></table> </schema> </privileges> --> </user>
5、啟動mycat
a) ./bin/mycat start
b)進入logs目錄 執行tail -100f wrapper.log ##查看啟動日志
c)在安裝mysql主機上執行,mysql -uroot -proot -P8066 -h172.16.3.162
完畢!
可以參考:https://blog.csdn.net/assassinsshadow/article/details/79291284 和 https://www.cnblogs.com/ivictor/p/5131480.html