数据库分片式管理--Mycat1

    随着项目的进行,读写分离是必须的,

    尤记得电商ERP我们订单表三百个字段,谁也不敢删.每次查询插入都造成不必要的浪费.分库分表势在必行.结果分表之后二百五十个字段.

    今天介绍的阿里的Mycat是分片式管理读写分离.

安装:   

Mycat官网:http://www.mycat.io/

可以了解下Mycat的背景和应用情况,这样使用起来比较有信心。


Mycat下载地址:http://dl.mycat.io/

官网有个文档,属于详细的介绍,初次入门,看起来比较花时间

下载:

    建议大家选择 1.6-RELEASE 版本,毕竟是比较稳定的版本。

Mycat的安装其实只要解压下载的目录就可以了,非常简单。

安装完成后,目录如下:

目录说明
binmycat命令,启动、重启、停止等
catletcatlet为Mycat的一个扩展功能
confMycat 配置信息,重点关注
libMycat引用的jar包,Mycat是java开发的
logs日志文件,包括Mycat启动的日志和运行的日志。

配置

Mycat的配置文件都在conf目录里面,这里介绍几个常用的文件:

文件说明
server.xmlMycat的配置文件,设置账号、参数等
schema.xmlMycat对应的物理数据库和数据库表的配置
rule.xmlMycat分片(分库分表)规则

Mycat的架构其实很好理解,Mycat是代理,Mycat后面就是物理数据库。和Web服务器的Nginx类似。对于使用者来说,访问的都是Mycat,不会接触到后端的数据库。

我们现在做一个主从、读写分离,简单分表的示例。结构如下图

006tNc79gy1fjglurmknmj30m80ipmyr.jpg


服务器IP说明
Mycat192.168.0.2mycat服务器,连接数据库时,连接此服务器
database1192.168.0.3物理数据库1,真正存储数据的数据库
database2192.168.0.4物理数据库2,真正存储数据的数据库

Mycat作为主数据库中间件,肯定是与代码弱关联的,所以代码是不用修改的,使用Mycat后,连接数据库是不变的,默认端口是8066。连接方式和普通数据库一样,如:jdbc:mysql://192.168.0.2:8066/









发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.5.2 Zero

WX:xcs345525801 QQ:345525801 Tel:19521445850 Email:xcssh868@163.com

Copyright © 2020 许承胜个人博客 版权所有 备案号:皖ICP备18014705号-1