Mycat使用的原則

2021-08-28 20:47:25 字數 427 閱讀 8504

mycat是乙個開源的資料庫中介軟體。在業務和資料庫中間提供的**層,介於資料庫與應用之間,進行資料處理與互動的中間服務,其核心功能分庫分表。

1.mycat原理

mycat接收前段對資料庫對訪問請求,是通過模擬mysql協議的介面實現的。在前端同mycat建立會話連線後,將請求的sql發給mycat後,mycat並不是直接交由資料庫處理。而是對sql進行攔截後,進行解析優化、分片分析、讀寫分離分析、快取分析,根據解析的結果進行路由處理。把sql發給復合規則的後端資料庫群執行。

mycat同後端資料庫使用基於mysql例項的連線池方式進行通訊,mycat接收後端資料庫返回的執行結果,對結果進行處理,比如分頁處理,排序處理、聚合處理、結果集合並等等,然後返回前端業務層。mycat實現實現讀寫分離和分片分庫,甚至備份容災等功能。

架構如下圖

圖1:架構圖(出自官方)

mycat分片規則的使用

以列舉法,取餘法為例 列舉法 sharding by intfile 在schema.xml中,有 其中表明了,在employee中必須要有id這個字段,採用的分片規則是sharding by intfile列舉 vim rule.xml 檢視分片規則 sharding id 表中必須有這個字段,因...

MyCat配置和使用

1 什麼是mycat 2 mycat應用場景 3 使用mycat路由實現讀寫分離 4 springboot動態資料來源切換原理 5.springboot專案實現讀寫分離 使用mycat實現讀寫分離 什麼是mycat mycat是一款由阿里cobar演變而來的用於支援資料庫,讀寫分離 分表分庫的分布式...

mycat 測試使用demo

前面已經講過mycat的安裝和基礎使用,下面根據實際場景 假如使用者很多的時候根據使用者id進行分表操作。先建立表 user info create table user info user id int 11 default null,amount varchar 255 default null...