1,什么是MyCat
MyCat是目前最流行的分布式数据库中间插件,是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。MyCat发展到目前的版本,已经不是一个单纯的MySQL代理了,它的后端可以支持MySQL、SQL Server、Oracle、DB2、PostgreSQL等主流数据库,也支持MongoDB这种新型NoSQL方式的存储,未来还会支持更多类型的存储。而在最终用户看来,无论是那种存储方式,在MyCat里,都是一个传统的数据库表,支持标准的SQL语句进行数据的操作,这样一来,对前端业务系统来说,可以大幅降低开发难度,提升开发速度
2,为什么使用MyCat
如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景是绝对要有事务与安全指标的。这个时候NoSQL肯定是无法满足的,所以还是需要使用关系性数据库。如何使用关系型数据库解决海量存储的问题呢?此时就需要做数据库集群,为了提高查询性能将一个数据库的数据分散到不同的数据库中存储,为应对此问题就出现了——MyCat综上所述:Mycat作用为:能满足数据库数据大量存储;提高了查询性能;实现读写分离,分库分表,
3,视频目录
01【熟悉】mycat简介
02【熟悉】mysql主从搭建
03【掌握】mysql的集群搭建
04【掌握】mycat的安装
05【掌握】mycat名词解释
06【掌握】mycat server.xml配置
07【掌握】mycat配置之schema.xml详解
08【掌握】分片详解之枚举
09【掌握】分片详解之取模
10【掌握】分片详解之范围约定
11【掌握】分片详解之固定分片hash算法
12【掌握】分片详解之字符串ID处理
13【掌握】分片详解之自然月分片
14【掌握】全局表和普通表的配置和测试
15【了解】ER表的配置和测试
16【掌握】全局ID的概述
17【掌握】mycat全局主键-本地文件
18【掌握】mycat全局主键-本地时间戳
19【掌握】mycat全局主键-zk生成
20【面试】全局主键生成方式-雪花算法
21【总结】用法补充