Mycat
  • MyCat简介与安装

    1.概述 1.1.是什么 Mycat是数据库中间件。 1.1.1.MyCat由来 Cobar属于阿里B2B事业群,始于2008年,在阿里服役3年多,接管3000+个MySQL数据库的schema,集群日处理在线SQL请求50亿次以上。由于Cobar发起人的离职,Cobar停止维护。 Mycat是开源社区在阿里cobar基础上进行二次开发,解决了cobar存在的问题,并且加入了许多新的功能在其中。 1.1.2.Mycat的官网 http://www.mycat.io/ 1.2.作用 1.2.1.读写分离 1.2.2.数据分片 垂直拆分(分库)、水平拆分(分表)、垂直+水平拆分(分库分表) 1.2.3.多数据源整合 1.3.原理 Mycat 的原理中最重要的一个动词是“拦截”,它拦截了用户发送过来的 SQL 语句,首先对 SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此 SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。 这种方式把数据库的分布式从代码中解耦出来,程序员察觉不出来后台使用Mycat还是MySQL。 2. 安装启动 2.1.安装 2.1.1.解压后即可使用 链接:https://pan.baidu.com/s/1DFBtcVmUg5hd1aH-OJcCEQ 提取码:1111 --来自百度网盘超级会员V2的分享 解压缩文件拷贝到linux下 /usr/local/ 2.1.2.三个配置文件 ①schema.xml:定义逻辑库,表、分片节点等内容 ②rule.xml:定义分片规则③server.xml:定义用户以及系统相关变量,如端口等 2.2.配置 2.2.1.修改配置文件server.xml 2.2.2.修改配置文件schema.xml 删除<schema>标签间的表信息, <dataNode>标签只留一个, <dataHost>标签只留一个, <writeHost><readHost>只留一对 <?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="TESTDB" checkSQLschema="false" ……

    SE_Meng 2024-11-08
    7 0 0
  • mycat作用

    在主从结构中,实现数据库的读写分离 在一主多从架构中,能对从的读进行负载均衡 实现数据库的垂直拆分 实现数据库的垂直拆分 本文链接:https://blog.csdn.net/qq_40911404/article/details/102644491

    SE_Meng 2024-11-07
    9 0 0
  • Mycat 详细介绍及入门实战,解决数据库性能问题

    一、基本原理 1、数据分片 (1)、水平分片 Mycat 将一个大表的数据按照一定的规则拆分成多个小表,分布在不同的数据库节点上。例如,可以根据某个字段的值进行哈希取模,将数据均匀的分布到不同的节点上。 这样做的好处是可以将数据分散到多个节点上,提高查询和写入的性能,同时也可以突破单个数据库的存储和处理能力限制。 (2)、垂直分片 将一个数据库中的不同表按照业务逻辑进行拆分,分别存储在不同的数据库节点上。 比如将用户的信息表和订单表分别存储在不同的节点上,这样可以根据业务的需求独立的对不同的表进行扩展和优化 2、中间件层 (1)、连接管理 Mycat 作为中间件,接收来自应用程序的数据库连接请求,并将这些请求转发到后端的真实数据库节点上。 它维护着与应用程序和数据库节点的连接池,提高连接的复用率,减少连接建立和关闭的开销 (2)、SQL解析 当接收到SQL请求时,Mycat 会对SQL 语句进行解析,识别出查询的表、字段、条件等信息 根据解析结果和配置的分库分表规则,确定SQL语句应该在那些数据库节点上执行。 (3)、SQL路由 降解析后的SQL语句转发到相应的数据库节点上执行,如果是查询语句,Mycat 会从多个节点上获取结果,并进行合并和排序后返回给应用程序。 如果是写入语句,Mycat会根据分库分表规则降数据写入到相应的节点上。 (4)、结果合并 对于从多个数据库节点返回的查询结果,Mycat 会进行合并和排序 ,使得应用程序看到的结果就像从一个单一的数据库中查询出来的一样。 3、高可用和负载均衡 (1)、高可用 Mycat 可以配置多个节点组成集群,当某个节点出现故障时,其他节点可以接管其工作,保证系统的高可用性。 可以通过主从复制、心跳检测等机制实现故障自动切换。 (2)、负载均衡 Mycat 可以根据配置的策略将请求均匀地分发到不同的数据库节点上,实现负载均衡,……

    SE_Meng 2024-10-21
    23 0 0