温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mycat范围分库和Hash分库怎么实现

发布时间:2021-12-23 17:25:05 来源:亿速云 阅读:161 作者:iii 栏目:大数据

本篇内容介绍了“mycat范围分库和Hash分库怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

2.1、范围分库

所谓的范围分库指的是可以根据你的id的范围进行不同数据库的保存,或者

是根据你的数据库的数据大小来进行保存进行的一种处理机制。

1、【mycat-server-01】定义一个新的分片规则:vim/usr/local/mycat/conf/rule.xml;

mycat范围分库和Hash分库怎么实现

mycat范围分库和Hash分库怎么实现

设置该分片处理所使用的算法:

mycat范围分库和Hash分库怎么实现

此时需要设置一个分片的规则文件:orders-partition-long.txt。

2、【mycat-server-01】编写具体的分片规则:vim/usr/local/mycat/conf/orders-partition-long.txt

mycat范围分库和Hash分库怎么实现

3、【mycat-server-01】更换分片规则:vim/usr/local/mycat/conf/schema.xml;

<tablename="orders"primaryKey="oid"dataNode="dn1,dn2,dn3"rule="myorders-auto-sharding-long"/>

那么随后启动mycat服务:/usr/local/mycat/bin/mycatconsole;追加数据:INSERTINTOorders(oid,title,pubdate)VALUES(11,@@hostname,'2020-01-01');这个时候将根据订单的编号来选择不同的分片进行数据的存储


2.2、Hash分库

Hash分库可以实现根据不同的编号保存到不同的数据库的操作,例如:假设说现在要求按照所在的地区进行分库的保存,这种情况就称为hash分库处理。

1、【mycat-server-01】设置一个新的分片规则:vim/usr/local/mycat/conf/rule.xml;

·增加新的分片项:此时title的可选内容一定是固定的;

mycat范围分库和Hash分库怎么实现

·增加相应的算法配置:

mycat范围分库和Hash分库怎么实现

对于hash分片需要设置它一个分片的数据类型:

·type=0:表示数字型分片;

·type=1:描述的是字符串分片。

·建立hash分片原则配置文件:

vim/usr/local/mycat/conf/myorders-partition-hash-int.txt

mycat范围分库和Hash分库怎么实现

那么此时title可以设置的内容就只有以上的几点了。

2、【mycat-server-01】配置mycat分片规则:vim/usr/local/mycat/conf/schema.xml;

<tablename="orders"primaryKey="oid"dataNode="dn1,dn2,dn3"rule="myorders-by-intfile"/>

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

允许你追加的title的内容是有限的。

INSERTINTOorders(oid,title,pubdate)VALUES(13,'sh','2020-01-01');

一般而言如果要想实现Hash的分片处理,往往需要有一些固定的数据信息出现,例如:按照省份分片,按照城市分片。

“mycat范围分库和Hash分库怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI