Mycat
悬崖三千尺
耐心与坚持成就未来!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
1,何为数据切分
简单来说,就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。 数据的切分(Sharding)根据其切分规则的类型,可以分为两种切分模式。一种是按照不同的表(或者Schema)来切分到不同的数据库(主机)之上,这种切可以称之为数据的垂直(纵向)切分;另外一种则是根据表中的数据的逻辑关系,将同一个表中的数据按照某种条件拆分到多台...原创 2019-03-14 16:28:20 · 1009 阅读 · 0 评论 -
11.Mycat全局序列号
在实现分库分表的情况下,数据库自增主键已无法保证自增主键的全局唯一。为此,MyCat 提供了全局 sequence,并且提供了包含本地配置和数据库配置等多种实现方式。 本地文件方式 原理:此方式 MyCAT 将 sequence 配置到文件中,当使用到 sequence 中的配置后,MyCAT 会更新下 classpath 中的 sequence_conf.properties 文件中 seq...原创 2019-09-19 15:34:05 · 242 阅读 · 0 评论 -
10.Mycat 的分片 join
Join 绝对是关系型数据库中最常用一个特性,然而在分布式环境中,跨分片的 join 确是最复杂的,最难解决一 个问题。 尽量避免使用 Left join 或 Right join,而用 Inner join 在使用 Left join 或 Right join 时,ON 会优先执行,where 条件在最后执行,所以在使用过程中,条件尽 可能的在 ON 语句中判断,减少 where 的执行 少用...原创 2019-09-19 15:12:11 · 298 阅读 · 0 评论 -
008.mycat的配置-server.xml
1,配置 server.xml 几乎保存了所有mycat 需要的系统配置信息。其在代码内直接的映射类为SystemConfig 类。 2,user 标签 <user name="test"> <property name="password">test</property> <property name="schemas">TESTDB&l...原创 2019-03-28 13:32:28 · 182 阅读 · 0 评论 -
007.mycat的配置-schema.xml
Schema.xml 作为MyCat 中重要的配置文件之一,管理着MyCat 的逻辑库、表、分片规则、DataNode 以及DataSource。弄懂这些配置,是正确使用MyCat 的前提。这里就一层层对该文件进行解析。 schema 标签 <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100"></sch...原创 2019-03-28 13:30:55 · 506 阅读 · 0 评论 -
006.防火墙配置
白名单和SQL 黑名单说明: 在server.xml 中配置: <firewall> <whitehost> <host user="mycat" host="127.0.0.1"></host> ip 白名单用户对应的可以访问的ip 地址 </whitehost> <blacklist check="true">...原创 2019-03-28 13:23:53 · 159 阅读 · 0 评论 -
009.mycat的配置-rule.xml
rule.xml 里面就定义了我们对表进行拆分所涉及到的规则定义。我们可以灵活的对表使用不同的分片算法,或者对表使用相同的算法但具体的参数不同。这个文件里面主要有tableRule 和function 这两个标签。在具体使用过程中可以按照需求添加tableRule 和function。 tableRule 标签 这个标签定义表规则 定义的表规则,在schema.xml中使用 <...原创 2019-03-29 15:42:23 · 260 阅读 · 0 评论 -
5,Mycat日志分析
mycat 的日志文件配置为MYCAT_HOME/conf/log4j.xml,结构为: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta...原创 2019-03-20 16:39:29 · 458 阅读 · 0 评论 -
4,Mycat 快速入门
环境安装与配置 MyCAT 目前主要通过配置文件的方式来定义逻辑库和相关配置: • MYCAT_HOME/conf/schema.xml 中定义逻辑库,表、分片节点等内容; • MYCAT_HOME/conf/rule.xml 中定义分片规则; • MYCAT_HOME/conf/server.xml 中定义用户以及系统相关变量,如端口等。 服务安装与配置 1,linux My...原创 2019-03-15 09:55:53 · 306 阅读 · 0 评论 -
3,Mycat中的概念
数据库中间件 Mycat 是数据库中间件,就是介于数据库与应用之间,进行数据处理与交互的中间服务。由于前面讲的对数据进行分片处理之后,从原有的一个库,被切分为多个分片数据库,所有的分片数据库集群构成了整个完整的数据库存储。 逻辑库(schema) 在云计算时代,数据库中间件可以以多租户的形式给一个或多个应用提供服务,每个应用访问的可能是一个独立或者是共享的物理库,常见的如阿里云数据库服务...原创 2019-03-14 16:39:08 · 131 阅读 · 0 评论 -
使用MyCat的场景?
最近进行的项目,由于公司人比较少,项目比较紧,基本设计与开发同步进行,其中有一个业务场景是:一个单独的mysql数据库存储采集上来的数据,但数据量比较大,理论上最高每秒会有上万数据入库,当然,进入的是不同的表,表的结构基本都是三列:时间,参数名,值。 目前,从测试上来看,1个月时间一个表的数据量差不多600万,实际业务会不会更大,也不好估算,其他几个表估计会比这个表数据量小。同时,前端会有业务模...原创 2019-03-14 16:20:15 · 2006 阅读 · 0 评论 -
2,Mycat概述
Mycat 是什么?从定义和分类来看,它是一个开源的分布式数据库系统,是一个实现了MySQL 协议的的Server,前端用户可以把它看作是一个数据库代理,用MySQL 客户端工具和命令行访问,而其后端可以用MySQL 原生(Native)协议与多个MySQL 服务器通信,也可以用JDBC 协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N 个小表,存储在后端MySQL...原创 2019-03-14 16:30:32 · 140 阅读 · 0 评论 -
12.Mycat 分片规则
在数据切分处理中,特别是水平切分中,中间件最终要的两个处理过程就是数据的切分、数据的聚合。选择 合适的切分规则,至关重要,因为它决定了后续数据聚合的难易程度,甚至可以避免跨库的数据聚合处理。 1.Mycat 全局表 如果你的业务中有些数据类似于数据字典,比如配置文件的配置,常用业务的配置或者数据量不大很少变动 的表,这些表往往不是特别大,而且大部分的业务场景都会用到,那么这种表适合于 Myca...原创 2019-09-20 11:03:47 · 578 阅读 · 0 评论
分享