zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Mycat 配置9

2023-04-18 14:27:40 时间

rule.xml

此配置用来定义分片规则

mycat:rule

框定rule的配置范围

<mycat:rule xmlns:mycat="http://org.opencloudb/">
</mycat:rule>

tableRule

定义一个分片规则

定义了一个 mod-long 的分片规则,对 id 列进行分片,使用 mod-long 算法;定义了一个 mod4-long 的分片规则,对 id 列进行分片,使用 mod4-long 算法

<tableRule name="mod-long">
                <rule>
                        <columns>id</columns>
                        <algorithm>mod-long</algorithm>
                </rule>
</tableRule>
<tableRule name="mod4-long">
                <rule>
                        <columns>id</columns>
                        <algorithm>mod4-long</algorithm>
                </rule>
</tableRule>

function

<function name="mod-long" class="org.opencloudb.route.function.PartitionByMod">
                <!-- how many data nodes -->
                <property name="count">3</property>
</function>
<function name="mod4-long" class="org.opencloudb.route.function.PartitionByMod">
                <!-- how many data nodes -->
                <property name="count">4</property>
</function>

Attribute

Comment

class

使用的类

property

通过 count=3/4 来指定分片数(指定模数)

注意

XML中定义的标签有顺序,如果不按照顺序进行配置,会报错

比如 schema.xml 中的顺序为

  • 1.定义 schema
  • 2.定义 dataNode
  • 3.定义 dataHost

如果不按顺序,会无法启动mycat,并且 mycat.log 中会报错

这里只对一套简单基础的配置进行了分析,只涵盖了一小部分,还未涵盖到的,可以参考 官方文档


命令汇总

  • ll conf/schema.xml
  • ll conf/rule.xml
  • ll conf/server.xml
  • ll conf/wrapper.conf
  • cat wrapper.conf | egrep "(Xm|MaxDirectMemorySize)"

原文地址