- 修改配置文件schema.xml
<?xml version=”1.0″?>
<!DOCTYPE mycat:schema SYSTEM “schema.dtd”>
<mycat:schema xmlns:mycat=”http://io.mycat/”>
<schema name=”TESTDB” checkSQLschema=”false” sqlMaxLimit=”100″ dataNode=”dn1″>
<table name=”customer” dataNode=”dn2″ ></table>
<table name=”orders” dataNode=”dn1,dn2″ rule=”mod_rule” ></table>
</schema>
……
- 修改配置文件rule.xml
<tableRule name=”mod_rule”>
<rule>
<columns>customer_id</columns>
<algorithm>mod-long</algorithm>
</rule>
</tableRule>
<function name=”mod-long” class=”io.mycat.route.function.PartitionByMod”>
<!– how many data nodes –>
<property name=”count”>2</property>
</function>
- 跨库join ER表
为了相关联的表的行尽量分在一个库下
修改配置文件schema.xml
<?xml version=”1.0″?>
<!DOCTYPE mycat:schema SYSTEM “schema.dtd”>
<mycat:schema xmlns:mycat=”http://io.mycat/”>
<schema name=”TESTDB” checkSQLschema=”false” sqlMaxLimit=”100″ dataNode=”dn1″>
<table name=”customer” dataNode=”dn2″ ></table>
<table name=”orders” dataNode=”dn1,dn2″ rule=”mod_rule” >
<childTable name=”orders_detail” primaryKey=”id” joinKey=”order_id” parentKey=”id” />
</table>
</schema>
……
- 全局表
设定为全局的表,会直接复制给每个数据库一份,所有写操作也会同步给多个库。
所以全局表一般不能是大数据表或者更新频繁的表。一般是字典表或者系统表为宜。
<?xml version=”1.0″?>
<!DOCTYPE mycat:schema SYSTEM “schema.dtd”>
<mycat:schema xmlns:mycat=”http://io.mycat/”>
<schema name=”TESTDB” checkSQLschema=”false” sqlMaxLimit=”100″ dataNode=”dn1″>
<table name=”customer” dataNode=”dn2″ ></table>
<table name=”orders” dataNode=”dn1,dn2″ rule=”mod_rule” >
<childTable name=”orders_detail” primaryKey=”id” joinKey=”order_id” parentKey=”id” />
</table>
<table name=”dict_order_type” dataNode=”dn1,dn2″ type=”global” ></table>
</schema>
……
- 建相关表
想要了解跟多关于Java培训课程内容欢迎关注尚硅谷Java培训,尚硅谷除了这些技术文章外还有免费的高质量Java培训课程视频供广大学员下载学习
上一篇: Java培训MySQL之MYCAT分库
下一篇: 大数据培训Impala之存储和压缩