mycat
1、配置文件
(1)server.xml
(2)schema.xml
设定模式(由于之前我们在server.xml中设定了)
所以此时需要告诉机器itcast是什么模式
<schema name="itcast" checkSQLschema="false" sqlMaxLimit="100">
<table name="tb_ad" dataNode="dn1" rule="mod-long" />
</schema>
<dataNode name="dn1" dataHost="cluster1" database="itcast" />
<dataHost name="cluster1" maxCon="1000" minCon="10" balance="3"
writeType="1" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="W1" url="47.114.1.149:3306" user="root"
password="123456">
<readHost host="W1R1" url="47.114.1.149:3307" user="root"
password="123456"/>
</writeHost>
</dataHost>
注意balance标定的是3,表明我们将所有读的请求发送到从数据库,写的请求发送发哦主数据库
table ->rule:指定分片规则(后面需配置)
(1) < heartbeat >心跳检测,通过查看user
(2)dataNode 指定分片关系,操作的是哪一个数据库
(3)writeHost 指定写的结点
(4)readHost 指定读的结点
(3)配置分片规则 rule.xml
默认结点是3个结点,因为我们只有一个结点,所以就采用1
2、启动mycat
(1)进入mycat/bin目录
(2)测试执行
表明测试启动成功
(3)正式启动
mycat start
查看启动状态
mycat status
例子如下
3、连接mycat(navicat)
在navicat中新建mycat连接(默认端口是8066)
创建成功后:
(1)在master主库中建立itcast库(由于我们设置在mycat中是itcast库)
注意以下操作都是在mycat对应的itcast库中
CREATE TABLE tb_ad
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
向表中插入数据
INSERT into tb_ad(id_P,LastName,FirstName,Address,City)
values(1,'N','dd','Heilongjiang','suihua')
这时我们查看主库中就会存在tb_ad表