范围分库指的是,根据id的范围进行不同数据库的保存,或者根据数据大小的不同来进行保存.


rule.xml

<tableRule name="my-auto-sharding-long">
        <rule>
                <columns>id</columns>
                <algorithm>my-auto-sharding-long</algorithm>
        </rule>
</tableRule>
<function name="my-auto-sharding-long" class="io.mycat.route.function.AutoPartitionByLong">
        <property name="mapFile">partition-long.txt</property><!--范围规则文件-->
</function>


 - 此时需要定义一个范围分库的规则问津`partition-long.txt`,并存放在`conf`目录中`vim /usr/local/mycat/conf/partition-long.txt`

# partition-long.txt

根据数据编号划分
0-10000=0
10001-20000=1
20001-30000=2


# schema.xml

<table name="data" primaryKey="id" dataNode="dn1,dn2,dn3" rule="my-auto-sharding-long"/>


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回