首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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-*】建立数据库脚本:

2、【mycat-server-01】修改mycat规则:vim/usr/local/mycat/conf/schema.xml;

3、【mycat-server-01】启动mycat服务:/usr/local/mycat/bin/mycatconsole;

4、【mysq

l-server-*】连接mycat进行测试

·追加订单数据:

·追加订单详情:

此时orders_details作为子表会与父表保存在同一个数据库里面。

3、总结

Mycat是库表分离最好的设计理念实现。库表分离的理论价值很高,互联网公司都会使用它。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191022A03G7500?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券