概述
myCat实现分库分表的策略,对数据量的处理带来很大的便利,这里主要整理下MyCat的使用以及常用路由算法,针对MyCat里面的事务、集群后续再做整理;另外内容整理,不免会参考技术大牛的博客,内容雷同,实属正常;基于业务区分数据源,主要为了实现如下的数据库
常规使用
配置schema.xml 在同一个mysql数据库中,创建了三个数据库 testdb1,testdb2,testdb3。并在每个库中都创建了user表
<?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="testdb" checkSQLschema="false" sqlMaxLimit="100” > <!——指定rule 分片规则--> <table name="user" dataNode="dn1,dn2,dn3" rule="sharding-by-intfile" /> </schema> <dataNode name="dn1" dataHost="host" database="testdb1" /> <dataNode name="dn2" dataHost="host" database="testdb2" /> <dataNode name="dn3" dataHost="host" database="testdb3" /> <dataHost name="host" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native"> <heartbeat>select 1</heartbeat> <writeHost host="hostM1" url="localhost:3306" user="root" password="123" /> </dataHost> </mycat:schema>