mycat之rule.xml

本文详细解析了Sharding中rule.xml文件的配置方法,包括tableRule和function标签的使用,阐述了如何通过这些标签定义表规则和路由算法,实现数据库表的灵活拆分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

rule.xml里面就定义了我们对表进行拆分所涉及到的规则定义。我们可以灵活的对表使用不同的分片算法,或者对表使用相同的
算法但具体的参数不同。这个文件里面主要有tableRule和function这两个标签。在具体使用过程中可以按照需求添加tableRule
和function。

tableRule标签

这个标签定义表规则。
定义的表规则,在schema.xml:

<tableRule name="rule1">
    <rule>
        <columns>id</columns>
        <algorithm>func1</algorithm>
    </rule>
</tableRule>
  • name 属性指定唯一的名字,用于标识不同的表规则。
  • 内嵌的rule标签则指定对物理表中的哪一列进行拆分和使用什么路由算法。
  • columns 内指定要拆分的列名字。
  • algorithm 使用function标签中的name属性。连接表规则和具体路由算法。当然,多个表规则可以连接到同一个路由算法上。标签内使用。让逻辑表使用这个规则进行分片。

function标签

<function name="hash-int" class="org.opencloudb.route.function.PartitionByFileMap">
    <property name="mapFile">partition-hash-int.txt</property>
</function>
  • name 指定算法的名字。
  • class 制定路由算法具体的类名字。
  • property 为具体算法需要用到的一些属性。

--------------------- 


原文:https://blog.youkuaiyun.com/leipeng321123/article/details/50402952 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值