大型分布式数据库中间件MyCat的安装与使用

1,359 阅读3分钟

官网资料

MyCat官网:www.mycat.io/

MyCat权威指南:www.mycat.io/document/My…

MyCat下载地址:dl.mycat.io/

MyCat下载

下载之后解压为如下:

这里写图片描述

MySQL环境搭建

1、MySQL主机地址:192.168.1.235、192.168.1.237

这里写图片描述

2、192.168.1.235、192.168.1.237的mycat_demo 表完全一样,这里可以任意建表,只要保持两个主机MySQL的库、表一致:

这里写图片描述

表结构:

这里写图片描述

MyCat配置

配置文件是在/conf 目录下,默认修改红色区域文件即可使用:

这里写图片描述

1、修改server.xml,这里只修改连接MyCat的用户名和密码,如下:

这里写图片描述

其中schemas是逻辑库,在后边的配置会用到,这里配置了一个逻辑库为:MYCAT_DEMO

2、修改schema.xml文件,配置逻辑库:

这里写图片描述

在MyCat中schema是逻辑库,schema 标签下的table是逻辑表,其中:

<table name="event" primaryKey="eventid" dataNode="dn1,dn2" rule="sharding-by-murmur" />

代表具体的数据库表中的studentdataNode 是MyCat中的分片节点,rule 对使用这种表的路由规则。

<dataNode name="dn1" dataHost="db235" database="mycat_demo" />

dataNode节点中的name就是上述table节点中使用到的dataNode名称,dataHost是具体每一个数据库服务器的节点名称,在下边进行配置的,database就是该节点中具体存在的一个数据库。

这里写图片描述

这个配置的就是具体的某一个MySQL服务器节点的,这里配置的意思是:对于该dataHost 所有的读写都发生在192.168.1.235 主机上。

关于更多参数可以参考:MyCat权威指南(下载地址:www.mycat.io/document/My…

这里写图片描述

文档介绍的很详细,每一个属性都有介绍到,这里不再赘述。

3、修改rule.xml,配置路由规则:

这里写图片描述

schema.xml文件中的逻辑表event 使用的逻辑规则是sharding-by-murmur,因此就需要在rule.xml 中进行配置,这个路由规则是Hash一致性算法。

-- colums表示需要分片的属性,我这里是eventid; -- property->count是在schema.xml中我们配置的分片的个数,即dataNode的个数,我这里是2;

这个是rule.xml提供的,我这里只是删除了其他未使用的路由规则,方便查看,也就是说,我们是使用了MyCat提供给我们的这个路由规则,所以不用修改这个文件的任何内容。

各个标签的对应关系很好理解,algorithm中的murmur对应functionname

MyCat启动

因为我这里是在Window平台上做的实验,启动文件在/bin 目录下:

这里写图片描述

这里我们直接双击:startup_nowrap.bat即可运行。

这里写图片描述

启动不报错,即表示成功运行。

由于使用MyCat和使用普通的MySQL数据库是一样的,因此我们可以直接使用Navicat直接进行链接:

这里写图片描述

默认端口为:8066

这里写图片描述

可以看到我们在schema.xml文件中配置的逻辑库和逻辑表。

这里写图片描述

可以看出完全和使用普通的MySQL一样的,当然在代码中使用也是一样的,只需要把链接换成MyCat的即可。例如我配置的一个c3p0连接池如下:

这里写图片描述

至此,MyCat的安装于基本的使用完成,更多MyCat的使用,请参照:MyCat权威指南(下载地址:www.mycat.io/document/My…


更多MyCat学习资料,扫码关注微信公众号:Java后端技术,发送:MyCat,获取学习资源

在这里插入图片描述

【视频福利】2T免费学习视频,搜索或扫描上述二维码关注微信公众号:Java后端技术(ID: JavaITWork)回复:1024,即可免费获取!内含SSM、Spring全家桶、微服务、MySQL、MyCat、集群、分布式、中间件、Linux、网络、多线程,Jenkins、Nexus、Docker、ELK等等免费学习视频,持续更新!