该文件是一个包含Mycat的系统配置信息文件我们对该文件做一个详解,该文件在我们安装包/mycat/conf中(该文是基于“Mycat分布式数据库架构解决方案--Linux安装运行Mycat”)的后续,可以了解安装之后目录结构。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:rule SYSTEM "rule.dtd">
<mycat:rule xmlns:mycat="http://io.mycat/">
<!-- tableRule标签主要用于定义表规则 -->
<!-- name属性指定唯一的名字,用于标识不同的表规则 -->
<!-- columns指定要拆分的列名字 -->
<!-- algorithm使用function标签中的name属性,用于连接表规则和具体的路由算法,多个表规则可以连接到一个路由算法 -->
<tableRule name="rule1">
<rule>
<columns>id</columns>
<algorithm>func1</algorithm>
</rule>
</tableRule>
<!-- function标签用于定义具体的拆分路由算法,对应我们上面的algorthm -->
<!-- name指定算法的名称,在文件中唯一 -->
<!-- class指定对应的具体的分片算法的具体类 -->
<!-- property具体算法的必须参数对应具体算法用到的一些属性 -->
<function name="func1" class="io.mycat.route.function.PartitionByLong">
<property name="partitionCount">8</property>
<property name="partitionLength">128</property>
</function>
</mycat:rule>