咱们先来作mysql的准备工做,伪装一张大表分红了3张表。
html
一:建立3个数据库db一、db二、db3。mysql
二:在三个分片里分别建立travelrecord表git
use db1; create table travelrecord( id varchar(64) not null, name varchar(5) not null, phone bigint(11) ); ENGINE=InnoDB DEFAULT CHARSET=utf8; use db2; create table travelrecord( id varchar(64) not null, name varchar(5) not null, phone bigint(11) ); ENGINE=InnoDB DEFAULT CHARSET=utf8; use db3; create table travelrecord( id varchar(64) not null, name varchar(5) not null, phone bigint(11) ); ENGINE=InnoDB DEFAULT CHARSET=utf8;
三:在三个分片里分别插入几条记录github
use db1; insert into trabelrecord values("12345","张三封",15723456789); insert into trabelrecord values("12356","张无忌",15823456780); insert into trabelrecord values("12367","张飞",15623456780); use db2; insert into trabelrecord values("22345","李隆基",13523456780); insert into trabelrecord values("23456","李白",13623456781); insert into trabelrecord values("24567","李煜",13723456782); use db3; insert into trabelrecord values("32345","王翦",18023456780); insert into trabelrecord values("33456","王勃",18123456781); insert into trabelrecord values("34567","王维",18223456782);
mysql的准备工做暂告一段落。接下来部署mycat。sql
四:下载mycat1.6版本数据库
下载地址:测试
五:解压并配置spa
解压完成后在schema.xml里配置节点及数据库链接code
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100"> <!-- auto sharding by id (long) --> <table name="travelrecord" dataNode="dn1,dn2,dn3" rule="auto-sharding-long" /> </schema> <dataNode name="dn1" dataHost="localhost1" database="db1" /> <dataNode name="dn2" dataHost="localhost1" database="db2" /> <dataNode name="dn3" dataHost="localhost1" database="db3" /> <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="hostM1" url="localhost:3306" user="root" password=""> </writeHost> </dataHost>
六:启动mycat
点击startup_nowrap.bat,没有一闪而过,则启动成功。
Ok,mycat也部署OK了,接下来能够测试了。
咱们在mysql workbench里链接mycat进去查询下分布在3个分片上的travelrecord表中的数据
Ok,分布在3个分片中的数据汇聚在一块儿了。