MyCAT入门

MyCAT

1.什么是MyCAT

MyCAT是基于阿里的cobar实现的数据库中间件产品。

2.什么是数据库中间件

就是介于数据库和应用之间,进行数据处理与交互的中间服务。有了数据库中间件,应用只需要集中处理业务,大量的通用的数据聚合,事务,数据源切换都由数据库中间件处理。

3.MyCAT的主要作用

1.单纯的读写分离,支持读写分离,主从切换;
2.分表分库,对于超过1000万的表进行分片,最大支持1000亿的单表分片
3.多租户应用,每个应用一个库,但应用程序mycat,实现多租户化
4.报表系统,借助mycat分表能力,处理大规模报表统计
5.替代Hbase,分析大数据

4.MyCAT基本元素

  • 逻辑库
数据库中间件是一个或多个数据库集群构成的逻辑库。他并不是只有一个数据库,而是有多个库的聚集。
  • 逻辑表
1.逻辑表
在分布式数据库系统中,对应用来说,读写数据的表就是逻辑表。逻辑表可以是数据切分后,分布在一个或多个分片库,也可以不做数据切分,不分片,只由一个表构成。
2.分片表
分片表,是指那些原有的很大数据的表,需要切分到多个数据库的表。
3.非分片表
一个数据库中并不是所有的表都很大,某些表可以不用进行切分。非分片表,既是数据量比较小的表
4.ER表
子表的记录与所关联的父表记录存放在同一数据分片上,即字表依赖于父表成为ER表。
5.全局表
一些常常很少会改变的表成为全局表(例如字典表),全局表将在每个数据分片上拷贝一份,且要保证数据相同。此时使用join操作时,将会大大提高效率。
  • 分片节点
数据切分后,一个大表被分到不同分片数据库上面,每个表分片所在的数据库就是分片节点。(dataNode)
  • 节点主机
数据切分后,每个分片节点不一定会都独占一个物理机器,同一物理机器上面可以有多个分片数据库,这样一个或多个分片节点所在的物理机器就是节点主机。为了避免单节点主机并发数量限制,尽量将读写压力高的节点,均匀分布在不同的节点主机。
  • 分片规则
一个大表被分成若干个分片表,就需要一定的规则。这样按照业务将数据分到某个分片的规则就是分片规则。
  • 全局序列号
数据切分后,原有关系数据库中的主键约束在分布式条件下将无法使用,因此需要引入外部机制保证数据唯一性标识,这种保证全局数据唯一标识的机制就是全局序列号

5.MyCAT安装

下载地址:[link](http://dl.mycat.io/1.6.6.1/)
###1.Linux系统
- 到mycat项目主页下载linux安装包。
- 将解压后文件放到usr/local/mycat目录下
- mycat解压后目录如下
bin程序目录
conf配置文件存放目录
lib存放mycat项目依赖包目录
logs存放mycat日志目录
- mycat启动
vi /etc/profile 在系统环境变量文件中增加 MYCAT_HOME=/usr/local/mycat
执行source /etc/profile命令,使环境变量生效
经过以上两个步骤的配置后,就可以到/usr/local/mycat/bin目录下执行:/mycat start启动服务。
###2.Windows系统
mycat在Windows中部署时,建议将解压后的目录放在根目录中,尽量在路径中不要包含中文路径。如:D:\Mycat-server-1.6-win\
命令行启动方式:
从cmd命令中将路径切换到bin目录下,执行startup_nowrap.bat即可启动mycat服务。(mycat需要java环境支持,需先要求已有节哀吧、va环境。并且版本必须在1.7以上)。
###2.基于zk的启动
......
......
......
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/695430

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。