Mycat2全新架構(gòu)的分布式數(shù)據(jù)庫(kù)中間件
Mycat 2.0 預(yù)覽版。
基于Nio實(shí)現(xiàn),有效管理線程,解決高并發(fā)問(wèn)題。
前后端共享buffer,支持全透?jìng)骱桶胪競(jìng)鳎瑯O致提升內(nèi)核性能,穩(wěn)定性和兼容性。
功能特性
-
支持SQL92標(biāo)準(zhǔn)。
-
支持單庫(kù)內(nèi)任意sql。
-
支持讀寫分離。
-
自動(dòng)集群管理。
-
支持負(fù)載均衡。
-
支持主從切換。
-
支持動(dòng)態(tài)注解。
-
結(jié)果集緩存。
配置說(shuō)明
-
mycat.yml:mycat代理的配置,指定開(kāi)啟的端口號(hào)提供代理服務(wù)
-
user.yml: 配置mycat的用戶名密碼和白名單
-
cluster.yml:集群配置,可以開(kāi)啟關(guān)閉集群功能,指定集群端口和id號(hào),id在集群內(nèi)必須唯一
-
balancer.yml:負(fù)載均衡配置,可以開(kāi)啟關(guān)閉負(fù)載均衡,負(fù)載均衡只有在集群模式下才生效
-
heartbeat.yml:心跳配置,指定心跳周期及切換間隔
-
schema.yml:mycat的邏輯庫(kù)
-
datasource.yml:后端數(shù)據(jù)庫(kù)的復(fù)制組配置
-
replica-index.yml:指定datasource.yml中復(fù)制組的寫節(jié)點(diǎn),默認(rèn)為0
-
sharding-rule.yml:分片規(guī)則
啟動(dòng)運(yùn)行
一、本地調(diào)試
配置文件只能有一個(gè),在IDEA中調(diào)試可以設(shè)置啟動(dòng)參數(shù),啟動(dòng)參數(shù)優(yōu)先級(jí)比配置文件高,會(huì)替換掉配置文件的參數(shù),現(xiàn)支持的啟動(dòng)參數(shù):
-
-mycat.proxy.port 8067
-
-mycat.cluster.enable true
-
-mycat.cluster.port 9067
-
-mycat.cluster.myNodeId leader-2
二、編譯運(yùn)行
1. 下載源碼并編譯
-
clone源代碼 git clone https://github.com/MyCATApache/Mycat2.git
-
maven編譯 mvn clean install
-
在target目錄下找到操作系統(tǒng)對(duì)應(yīng)的壓縮包,如linux下的mycat2-0.1-20170906223147-linux.tar.gz
-
將壓縮包解壓縮到指定路徑
2. 修改配置文件
配置文件在conf目錄下,需要修改的配置文件包括:
-
mycat.yml,指定ip和端口號(hào)
-
user.yml,配置user信息,包括name和password,登錄的時(shí)候需要按照指定的用戶名密碼登錄,schemas對(duì)應(yīng)為schema.yml中的schema,白名單功能默認(rèn)關(guān)閉
-
cluster.yml,指定是否開(kāi)啟集群模式以及集群節(jié)點(diǎn)的基本信息,默認(rèn)集群關(guān)閉
-
balancer.yml,指定是否開(kāi)啟負(fù)載均衡模式以及負(fù)載均衡的基本信息,默認(rèn)負(fù)載均衡關(guān)閉
-
heartbeat.yml,配置心跳相關(guān)信息,可以使用默認(rèn)值
-
schema.yml,設(shè)置相關(guān)的schema
-
datasource.yml,設(shè)置后端連接的復(fù)制組信息
-
replica-index.yml,設(shè)置復(fù)制組寫節(jié)點(diǎn)配置,默認(rèn)為0
3. 運(yùn)行
-
運(yùn)行的方式與 1.6 相同
-
linux 環(huán)境 運(yùn)行 bin 目錄下 ./mycat {console | start | stop | restart | status | dump }
-
window 環(huán)境 運(yùn)行 bin 目錄下 startup_nowrap.bat
-
運(yùn)行成功后,使用 root 賬號(hào)登錄,登錄密碼 123456 登錄,端口號(hào)為mycat.yml中配置的端口號(hào),默認(rèn)為8066
4. 集群?jiǎn)?dòng)
-
conf目錄下,需要正確配置mycat.yml,cluster.yml,balancer.yml
-
配置完成后,按照第三步的方式依次啟動(dòng)各個(gè)節(jié)點(diǎn)的mycat,將自動(dòng)進(jìn)行集群管理
