4-2-1 MyCAT 介绍和部署

最后更新于:2022-04-02 07:44:04

### 请转移到爱可生的DBLE项目 #### MyCAT是什么? 真的没什么可写的。 http://www.MyCAT.io/ 请先看《MyCAT权威指南》第二章 #### MyCAT最重要 MyCAT的原理中最重要的一个动词是“拦截”,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户 #### MyCAT的典型场景 1.单纯读写分离,配置简单,支持读写分离和主从切换 2.分库分表,对于超过1000万的表进行分片,最大支持1000亿单表分片 3.多租户应用,每个应用一个库,应用只连接MyCAT,从而不改造数据库本身,实现多租户 4.报表系统,借助MyCAT的分表能力,处理大规模报表统计 #### MyCAT安装 依赖环境: - JDK 1.8(安装略) - hostname添加到/etc/hosts - MyCAT本机安装MySQL环境,配合环境变量 - 设置MySQL下的lower_case_table_names=1,避免MyCAT找不到表 #### MyCAT目录作用 - conf/schema.xml 定义逻辑库,表、分片节点等内容 - conf/rule.xml 定义分片规则 - conf/server.xml 定义用户及系统相关变量,如端口 - lib目录存放MyCAT依赖的jar包 - logs/MyCAT.log 每天一个文件,日志配置在/conf/log4j.xml,可以调整输出等级 #### MyCAT潜规则 DML语句服务器执行,不要通过MyCAT
';