更新時間:2020-11-16 16:02:19 來源:動力節(jié)點 瀏覽1228次
MyCat是一個開源的分布式數(shù)據(jù)庫系統(tǒng),是一個實現(xiàn)了MySQL協(xié)議的服務(wù)器,前端用戶可以把它看作是一個數(shù)據(jù)庫代理,用MySQL客戶端工具和命令行訪問,而其后端可以用MySQL原生協(xié)議與多個MySQL服務(wù)器通信,也可以用JDBC協(xié)議與大多數(shù)主流數(shù)據(jù)庫服務(wù)器通信,其核心功能是分表分庫,即將一個大表水平分割為N個小表,存儲在后端MySQL服務(wù)器里或者其他數(shù)據(jù)庫里。
MyCat發(fā)展到目前的版本,已經(jīng)不是一個單純的MySQL代理了,它的后端可以支持MySQL、SQL Server、Oracle、DB2、PostgreSQL等主流數(shù)據(jù)庫,也支持MongoDB這種新型NoSQL方式的存儲,未來還會支持更多類型的存儲。而在最終用戶看來,無論是那種存儲方式,在MyCat里,都是一個傳統(tǒng)的數(shù)據(jù)庫表,支持標(biāo)準(zhǔn)的SQL語句進(jìn)行數(shù)據(jù)的操作,這樣一來,對前端業(yè)務(wù)系統(tǒng)來說,可以大幅降低開發(fā)難度,提升開發(fā)速度。
我們的應(yīng)用只需要一臺數(shù)據(jù)庫服務(wù)器的時候我們并不需要Mycat,而如果你需要分庫甚至分表,這時候應(yīng)用要面對很多個數(shù)據(jù)庫的時候,這個時候就需要對數(shù)據(jù)庫層做一個抽象,來管理這些數(shù)據(jù)庫,而最上面的應(yīng)用只需要面對一個數(shù)據(jù)庫層的抽象或者說數(shù)據(jù)庫中間件就好了,這就是Mycat的核心作用。
Mycat原理
Mycat的原理中最重要的一個動詞是“攔截”,它攔截了用戶發(fā)送過來的SQL語句,首先對SQL語句做了一些特定的分析:如分片分析、路由分析、讀寫分離分析、緩存分析等,然后將此SQL發(fā)往后端的真實數(shù)據(jù)庫,并將返回的結(jié)果做適當(dāng)?shù)奶幚恚罱K再返回給用戶。
上述圖片里,應(yīng)用程序不再直接訪問數(shù)據(jù)庫,而是訪問Mycat,由Mycat與數(shù)據(jù)庫交互,數(shù)據(jù)庫數(shù)據(jù)返回給Mycat,Mycat再返回給應(yīng)用程序。三個Database才是真正的數(shù)據(jù)庫,又稱為三個節(jié)點,也稱為三個分片。
動力節(jié)點Mycat視頻教程,這是一套超級詳細(xì)的Mycat視頻,適合Mycat分布式數(shù)據(jù)庫零基礎(chǔ)的學(xué)員學(xué)習(xí),通俗易懂,是你學(xué)習(xí)Mycat分布式數(shù)據(jù)庫的好幫手。
課程學(xué)習(xí)目錄
1.MyCat視頻教程:背景
2.MyCat視頻教程:MyCat介紹
3.MyCat視頻教程:能做什么-讀寫分離
4.MyCat視頻教程:能做什么-水平拆分
5.MyCat視頻教程:能做什么-垂直拆分
6.MyCat視頻教程:安裝MyCat
7.MyCat視頻教程:配置文件解讀-server文件
8.MyCat視頻教程:配置文件解讀-schema
9.MyCat視頻教程:讀寫分離配置
10.MyCat視頻教程:讀寫分離測試
11.MyCat視頻教程:Java代碼鏈接MyCat
12.MyCat視頻教程:水平拆分
13.MyCat視頻教程:水平拆分測試
14.MyCat視頻教程:垂直拆分
15.MyCat視頻教程:主鍵生成策略
16.MyCat視頻教程:總結(jié)
以上就是動力節(jié)點java培訓(xùn)機構(gòu)的小編針對“Mycat視頻教程,零基礎(chǔ)學(xué)習(xí)”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
初級 202925
初級 203221
初級 202629
初級 203743