mycat 分庫分表

2021-10-07 10:45:21 字數 1704 閱讀 4492

記錄一下,方便檢視

1.分庫分表解決方案:

應用層(jar包):噹噹 -sharding-jdbc   阿里-tddl

2.拆分原則:

2.1能不拆分盡量不拆分

2.2如果要拆分一定要選擇合適的拆分規則,提前規劃好

2.3資料拆分盡量通過資料冗餘或表分組來降低跨庫join的可能  

2.4跨庫join是共同難題,所以業務讀取盡量少使用多表join

2.5分片規則和策略  多種分片規則策略,還可以自定義

2.6分布式全域性唯一id  多種分布式全域性唯一id實現

2.7多資料來源管理問題   統一管理所有資料來源 

2.8跨庫跨表join問題   全域性表/sharedjoin/catlet

3 核心配置檔案:

server.xml:是mycat伺服器引數調整和使用者授權的配置檔案。

schema.xml:是邏輯庫定義和表以及分片定義的配置檔案。

rule.xml:是分片規則的配置檔案,分片規則的具體一些引數資訊單獨存放為檔案,也在這個目錄下,配置檔案修改需要重啟  mycat。

log4j.xml:日誌存放在logs/log中,每天乙個檔案,日誌的配置是在conf/log4j.xml中,根據自己的需要可以調整輸出級別為    debug;debug級別下,會輸出更多的資訊,方便排查問題。

分片相關的id分片規則配置檔案 autopartition-long.txt partition-hash-int.txt sequence_conf.properties   sequence_db_conf.properties

service.xml 這是mycat的使用者名稱密碼 可以用資料庫連線工具連線

schema.xml 對應上圖的 testdb

看第乙個table 標籤 裡面有個rule 就是分片規則  通過id 來分片

4 然後啟動mycate(windows版本) 在bin目錄下  startup_nowrap.bat

5.資料庫連線:因為是本地 然後密碼在配置檔案展示了  用8066埠就可以連線 了

mycat庫下的db:

Mycat分庫分表

schema.xml 配置 name dn1 datahost localhost1 database db1 name dn2 datahost localhost1 database db2 name dn3 datahost localhost1 database db3 把localhost...

mycat分庫分表

一 修改schema.xml select user 二 修改server.xml 0 0 10 011m 1k0 384m true 123456 testdb user testdb true 三 啟動關閉1 進入bin目錄,2 啟動輸入.mycat start。關閉命令 mycat stop ...

mycat分庫分表

mycat是資料庫分庫分表的中介軟體,mycat使用最多的兩個功能是 讀寫分離和分庫分表功能,支援全域性表和e r關係 這兩個比較實用 mycat相當於是乙個 可以將多個實際資料庫組合成乙個完整的虛擬資料庫 我們可以直接訪問mycat的埠,其使用的是mysql原生的協議連線資料庫進行通訊 mycat...