MYCAT单表多库水平切片

基于MYCAT1.6单表多库水平切片,数据均分至3个数据库:

1. 配置schema.xml

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
	<schema name="schema1" checkSQLschema="false" sqlMaxLimit="100" >
		<table name="t_user" primaryKey="id" dataNode="dn$1-3" rule="mod-long" /> 
	</schema>
	
	<dataNode name="dn1" dataHost="dtHost1" database="db1" />
	<dataNode name="dn2" dataHost="dtHost2" database="db1" />
	<dataNode name="dn3" dataHost="dtHost3" database="db1" />

	<dataHost name="dtHost1" maxCon="500" minCon="10" balance="0"
		writeType="0" dbType="mysql" dbDriver="native" >
		<heartbeat>select user()</heartbeat>
		<writeHost host="hostM1" url="192.168.158.131:3306" user="root" password="root" />
	</dataHost>
	
	<dataHost name="dtHost2" maxCon="500" minCon="10" balance="0"
		writeType="0" dbType="mysql" dbDriver="native" >
		<heartbeat>select user()</heartbeat>
		<writeHost host="hostM2" url="192.168.158.134:3306" user="root" password="root" />
	</dataHost>
	
	<dataHost name="dtHost3" maxCon="500" minCon="10" balance="0"
		writeType="0" dbType="mysql" dbDriver="native" >
		<heartbeat>select user()</heartbeat>
		<writeHost host="hostM3" url="192.168.158.130:3306" user="root" password="root" />
	</dataHost>
</mycat:schema>

 

2. 配置server.xml,需要需改的参数

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
	<system>
	    <property name="charset">utf8mb4</property>
            <property name="sequnceHandlerType">1</property><!--1主键策略为数据库方式-->
	</system>
	<user name="root">
	    <property name="password">root</property>
	    <property name="schemas">schema1</property>
	</user>
	<user name="root2">
	    <property name="password">root</property>
	    <property name="schemas">schema1</property>
	    <property name="readOnly">true</property>
	</user>
</mycat:server>

 

3. “主键策略为数据库方式”可参考以下

       http://www.cnblogs.com/raphael5200/p/5900007.html

 

 

 

 

 

 

 

猜你喜欢

转载自wuhao51.iteye.com/blog/2380753