您好,登錄后才能下訂單哦!
本篇內容介紹了“mycat怎么按月分庫”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
2.4、按月分片
如果你現在一年的數據量都非常的大,或者是說你每一個月的數據量都非常龐大,那么此時最好的做法是進行按照不同的月分片。那么你應該準備出12個數據庫來實現你的操作,可是不要忘記了,12個數據庫還需要12個從數據庫進行配置。
1、【mycat-server-01】修改分片規則文件:vim/usr/local/mycat/conf/rule.xml;
·定義一個分片規則:
·定義分片的使用算法:
2、【mycat-server-01】修改mycat的配置文件:vim/usr/local/mycat/conf/schema.xml
·mysql-server-01:1~4;
·mysql-server-02:5~8;
·mysql-server-03:9~12
3、【mycat-server-01】啟動mycat服務:/usr/local/mycat/bin/mycatconsole
如果現在要是建立了12個主機,那么一定觀察很給力。
2.5、ER模型分片(子表分片)
一般在進行購物系統建立的時候往往都會建立這樣的一種機制:假設說,現在有一個訂單,那么訂單里面一定要對應有多個訂單的詳情信息,以詳細的描述出用戶所購買的全部商品。那么這個訂單的詳細信息的數據存儲,那么這個訂單詳情的數據一定要對應有一個訂單的數據信息,這個數據應該保存在訂單記錄同樣的數據庫里面。
1、【mysql-server-*】建立數據庫腳本:
DROPDATABASEIFEXISTSmdb;CREATEDATABASEmdbCHARACTERSETUTF8;usemdb;
2、【mycat-server-01】修改mycat規則:vim/usr/local/mycat/conf/schema.xml;
3、【mycat-server-01】啟動mycat服務:/usr/local/mycat/bin/mycatconsole;
4、【mysql-server-*】連接mycat進行測試
·追加訂單數據:
INSERTINTOorders(oid,title,pubdate)VALUES(11,@@hostname,'2020-01-01');INSERTINTOorders(oid,title,pubdate)VALUES(12,@@hostname,'2020-01-01');
·追加訂單詳情:
INSERTINTOorders_details(odid,oid,gtitle,amount)VALUES(1001,11,'java',100);
此時orders_details作為子表會與父表保存在同一個數據庫里面。
“mycat怎么按月分庫”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。