赞
踩
mycat是数据库中间件。(中间件:是一类链接软件组件和应用的计算机软件,以便于软件各部件之间的交互)。
为什么要用mycat:
Mycat的原理中最重要的一个动词是“拦截”’,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。
作为数据库优化方案,解决数据库性能瓶颈问题。
数据库性能瓶颈出现的原因:连接、速度、存储。
常见数据库瓶颈问题:
- 数据库数量大,查询效率低
- 分布式数据库架构复杂对接困难
- 高访问、高并发对数据库压力大
架构演进:单应用单数据库 -> 多应用单数据库 -> 多应用独立数据库
分表:解决单表数据量过大导致的查询效率下降。理论分表500W,以实际业务为准。
跨库的关联查询(要尽量避免跨库关联查询)
分布式事务:
CAP:一致性、可用性、分区容错性。
BASE:BA基本可用、S软状态(中间状态)、E最终一致
排序、分页、函数计算问题
limit 1,10
dn1: 1 3 5 7 9
dn2: 2 4 6 8 10
全局主键
Oracle:sequence
mycat2:路由注释、XA事务、MySQL8。
DAO(AbstractRoutingDataSource) - ORM(shardbatis) - JDBC(Sharding-JDBC) - Proxy(mycat) - Server(redis等特定数据库)
术语:主机/实例、物理数据库、物理表、分片、分片节点、分片键、分片算法、逻辑表、逻辑数据库
9066管理端口
show @@help;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。