更新時間:2022-12-15 10:55:23 來源:動力節點 瀏覽1082次
數據庫Mycat讀寫分離中間件是什么?動力節點小編來告訴大家。
1.準備兩臺主機安裝好mysql
2.能夠互相ping通或使用mysql命令(mysql -uroot -p123456 -h 192.168.2.100)能夠相互訪問
3.mycat的讀寫分離是基于mysql的主從復制,所以需要先mysql主從復制。
http://dl.mycat.org.cn/1.6.7.4/Mycat-server-1.6.7.4-release/
解壓后即可使用,在conf文件夾下有三個主要配置文件如下:
1.scheme.xml: 定義邏輯庫,表,分片節點等內容。
2.rule.xml: 定義分片規則。
3.server.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="host1" database="dw-study" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="3"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="hostM1" url="10.167.19.114:3306" user="root"
password="123456">
<!-- can have multi read hosts -->
<readHost host="hostS2" url="10.167.19.115:3306" user="root" password="123456" />
</writeHost>
</dataHost>
</mycat:schema>
修改用戶名、密碼、mycat邏輯數據庫名字
快速啟動mycat
cd /bin# 啟動mycat
./mycat start# 停止mycat./mycat stop
進入mycat
mysql -umycat -p1234 -h10.167.19.114 -P 8066
-u : server.xml中配置的 user
-p : 密碼
-h : mycat所在主機
-P: mycat默認端口
修改 Mycat 的配置文件 schema.xml 修改的balance屬性,通過此屬性配置讀寫分離的類型
為了雙主雙從讀寫分離balance設置為1
…
<dataNode name="dn1" dataHost="host1" database="testdb" />
<dataHost name="host1" 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 host="hostM1" url="192.168.140.128:3306" user="root"
password="123123">
<!-- can have multi read hosts -->
<readHost host="hostS1" url="192.168.140.127:3306" user="root"
password="123123" />
</writeHost>
<writeHost host="hostM2" url="192.168.140.126:3306" user="root"
password="123123">
<!-- can have multi read hosts -->
<readHost host="hostS2" url="192.168.140.125:3306" user="root"
password="123123" />
</writeHost>
</dataHost>
…
#balance="1": 全部的readHost與stand by writeHost參與select語句的負載均衡。
#writeType="0": 所有寫操作發送到配置的第一個writeHost,第一個掛了切到還生存的第二個
#writeType="1",所有寫操作都隨機的發送到配置的 writeHost,1.5 以后廢棄不推薦
#writeHost,重新啟動后以切換后的為準,切換記錄在配置文件中:dnindex.properties 。
#switchType="1": 1 默認值,自動切換。
# -1 表示不自動切換
# 2 基于 MySQL 主從同步的狀態決定是否切換。
以上就是關于“數據庫Mycat讀寫分離中間件”的介紹,大家如果對此比較感興趣,想了解更多相關知識,不妨來關注一下本站的Mycat教程,里面還有更豐富的知識等著大家去學習,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習