真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何使用MyCat分表分庫(kù)原理分析

這篇文章給大家分享的是有關(guān)如何使用MyCat分表分庫(kù)原理分析的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。

十載的龍山網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整龍山建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)從事“龍山網(wǎng)站設(shè)計(jì)”,“龍山網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

MyCat是一個(gè)開(kāi)源的分布式數(shù)據(jù)庫(kù)系統(tǒng),是一個(gè)實(shí)現(xiàn)了MySQL協(xié)議的服務(wù)器,前端用戶可以把它看作是一個(gè)數(shù)據(jù)庫(kù)代理,用MySQL客戶端工具和命令行訪問(wèn),而其后端可以用MySQL原生協(xié)議與多個(gè)MySQL服務(wù)器通信,也可以用JDBC協(xié)議與大多數(shù)主流數(shù)據(jù)庫(kù)服務(wù)器通信,其核心功能是分表分庫(kù),即將一個(gè)大表水平分割為N個(gè)小表,存儲(chǔ)在后端MySQL服務(wù)器里或者其他數(shù)據(jù)庫(kù)里。

Mycat可以實(shí)現(xiàn) 讀寫分離 分表分庫(kù)

主從復(fù)制是MySQL自帶的哈~

關(guān)于分片取模算法:  根據(jù)id進(jìn)行取模  根據(jù)數(shù)據(jù)庫(kù)集群的數(shù)量(或者說(shuō)是表數(shù)量,mycat里面一個(gè)表對(duì)應(yīng)一個(gè)庫(kù))

使用MyCat分表分庫(kù)原理分析

Mycat中的路由結(jié)果是通過(guò)分片字段和分片方法來(lái)確定的,如果查詢條件中有 id 字段的情況還好,查詢將會(huì)落到某個(gè)具體的分片。如果查詢沒(méi)有分片的字段,會(huì)向所有的db都會(huì)查詢一遍,讓后封裝結(jié)果級(jí)給客戶端。

修改/mycat/conf/log4j2.xml日志級(jí)別為debug

比如:

在查詢

select * from user_info

發(fā)送三個(gè)db請(qǐng)求

如果是查詢素有的情況下(不帶條件)

轉(zhuǎn)換成為:

select * from db1.user_info
select * from db2.user_info
select * from db3.user_info

最后把結(jié)果集給mycat進(jìn)行封裝 然后返回給客戶端

如果加個(gè)where id = 1  這樣帶條件的情況下  mycat會(huì)進(jìn)行轉(zhuǎn)換 1%3=1  在db2上!轉(zhuǎn)換成 select * from db2.user_info where id = 1 如果查詢的是分片的話,效率很高。發(fā)送一條就搞定

如果不是分片字段的話  會(huì)發(fā)送三條哦!效率很低

比如 where name = ‘jack’ 會(huì)發(fā)送三條 根據(jù)條件去每個(gè)數(shù)據(jù)庫(kù)里面進(jìn)行查詢 返回結(jié)果

tailf -200f mycat.log: 進(jìn)行實(shí)時(shí)的查看

然后迅速的查詢  一目了然

注意分頁(yè)查詢:

select * from user_info limit 0,2

到底是哪個(gè)數(shù)據(jù)分片的?

往三個(gè)庫(kù)里面發(fā)三個(gè)select請(qǐng)求  獲取三對(duì) 六條結(jié)果

隨機(jī)抽取一對(duì)返回給客戶端

如果加了排序的條件呢?

 select * from user_info order by id  limit 0,2   (相當(dāng)于取出最大的兩條數(shù)據(jù))

先發(fā)送三個(gè)select 每個(gè)都是最大的兩條 然后返回給mycat  進(jìn)行綜合評(píng)選拿出最大的倆 返回給客戶端

如果是

 select * from user_info   limit 0,3

每次請(qǐng)求返回的都是在改變的 是隨機(jī)的!

db1 取兩條 db2 和 db3隨機(jī)一條

感謝各位的閱讀!關(guān)于如何使用MyCat分表分庫(kù)原理分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


網(wǎng)站名稱:如何使用MyCat分表分庫(kù)原理分析
URL地址:http://weahome.cn/article/pdioce.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部