MyCat配置文件详解--rule.xml

Posted kldx5092

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyCat配置文件详解--rule.xml相关的知识,希望对你有一定的参考价值。

rule.xml中定义了对表进行拆分所涉及到的规则。我们可以对表使用不同的分片算法,或对表使用相同的算法但不同的参数。该文件中主要有tableRule和function 两个标签。

1. tableRule标签

该标签定义表规则。在rule.xml中定义表规则,例如:

<tableRule name="rule1">
    <rule>
        <columns>id</columns>
        <algorithm>func1</algorithm>
    </rule>
</tableRule>    

其中,name属性为表规则指定唯一名字。内嵌的rule标签指定拆分的物理表的列名及使用的路由算法。columns标签指定拆分的列名字。algorithm标签通过function标签的name属性,连接表规则和具体路由算法。当然,多个表规则可以连接到
同一个路由算法。 
rule.xml定义的表规则与schema.xml中table标签的rule属性相对应,逻辑表通过该规则进行分片。

2.function标签

该标签定义tableRule标签定义表规则的所用的算法,例如:

<function name="hash-int" class="io.mycat.route.function.PartitionByFileMap">
    <property name="mapFile">partition-hash-int.txt</property>
</function>

其中,name指定算法的名字,这与tableRule标签中name属性值相对应。class指定路由算法的具体类名字。property为具体算法需要用到的一些属性。

以上是关于MyCat配置文件详解--rule.xml的主要内容,如果未能解决你的问题,请参考以下文章

MyCat配置详解

MyCat学习第一天之MyCat简介,配置文件详解,分片操作,分片规则

Mycat核心配置

MyCat关键配置说明

Mycat配置入门

springboot + mybatis + mycat整合