一、Mycat实战---为什么要用mycat
系列导航
本篇博客开始给大家介绍一下mycat,个人感觉这个东西非常不错填补了关系型数据库分布式部署领域的一个空白。
后续将围绕mycat他能干什么?mycat是什么?怎么用?来介绍mycat,当然重点是怎么用,这将伴随一系列的样例来给大家介绍。
怎么用将围绕以下几点来逐步给大家讲解
1、mycat的安装
2、mycat的实验数据
3、mycat垂直分布及全局表实验
4、mycat水平分布实验
5、mycat全局ID自增实验
6、mycatER分片表实验
序:
所有介绍的内容都是参考Mycat权威指南和一个视频教程内容,然后亲自动手验证过得,非常感谢视频的录制者能够分享,我也继承分享精神继续分享给大家,有什么建议欢迎大家一起讨论。博客中的文字描述都是我个人的体会肯定会有不全面的地方甚至不对的地方,希望大家指正。
一、首先说mycat能干什么?
答案:他能够将mysql数据组成一个分布式的集群,可以把物理上多个独立的mysql数据库,搞成一个逻辑上的整体,使开发者感受不到的物理上的独立。这些物理上独立的mysql数据库按照配置不同各自完成各自的工作。
二、为什么要介绍mycat?
这些年随着互联网、物联网的发展产生了大量的数据,伴随而生的涌现出一批新型的nosql数据库比如mongodb、redis还有消息队列kafka、这些新型的nosql数据库和消息队列,发展非常快以更快的读写速度、高可用的架构设计而抢占了传统关系型数据库的一些市场份额。但我认为传统数据库的优势是无法撼动的,MongoDB读写是快你让他关联查询试试。总之各有各的优势不同的业务场景找到最适合的技术方案就ok。
mongodb、redis、kafka这些都可以搞成集群甚至搞成分片来提整体的性能并且实现了高可用。但是咱们传统的关系型数据库貌似没有这样的能力。阿里巴巴修改了mysql的源码搞成了mysql的集群而替代了昂贵的oracle,但我们并没有能方便的使用该项技术,起码我没有在网上找到我想要的东西。
在寻找关系型数据分布式部署的过程中我看过360 Atlas、OneProxy、DRDS、Cobar但是都因为学习资料少而没有搞成,只有mycat比较靠谱。
关系型数据库本人非常推崇oracle,oracle11g简直就是单机版数据库的巅峰,他的原理就像一件艺术品一样以最优的方式运行着,可能就是因为oracle11g单机版的性能太过强大,绝大多数应用场景都可以满足需求,所以关系型数据库的分布式的研究并没有那么迫切,反正可以用去研究干嘛。但随着业务量不断地增加关系型数据库的分布式部署的需求也逐渐增加。mycat就应用而生了,虽然我非常喜欢oracle不是那么喜欢mysql(oracle用起来像开宝马,mysql用起来像是在开QQ 哈哈纯属个人见解)
三、mycat是什么?
Mycat是用于数据库之间分库分表的中间件,简单的来说就是用于在多个数据库上的表通过mycat代理连接,实现一张或者多张分库或分表的大表数据根据定义的分片规则聚合展示,在这里就简单的说一说Mycat。Mycat的前身是阿里的Cobar,在2013年时Cobar在社区使用过程中发现存在一些比较严重的问题,及其使用限制,经过Mycat发起人第一次改良,第一代改良版——Mycat诞生。 Mycat开源以后,一些Cobar的用户参与了Mycat的开发,最终Mycat发展成为一个由众多软件公司的实力派架构师和资深开发人员维护的社区型开源软件。
好了本章主要介绍mycat能干什么,他是什么?下章开始正式动手来实现了敬请期待。

推荐一个适合零基础学习SQL的网站:不用安装数据库,在线轻松学习SQL!
一、Mycat实战---为什么要用mycat的更多相关文章
- Mycat实战之数据迁移(oracle -- mysql)
1.案例场景: Mycat 后面接一个 Oracle 实例与一个 MySQL 实例,假设用户表,订单表,转账记录表, Oracle 字符集为 GBK 的,MySQL 字符集则要求 UTF8的 完成用户 ...
- MYCAT实战之分片迁移
实践扩容 1.要求: travelrecord 表定义为10个分片,尝试将10个分片中的 2 个分片转移到第二台MySQL上, 并完成记录要求,最快的数据迁移做法,中断业务时间最短 2.针对分片以及迁 ...
- Mycat实战之主键数据库自增方式
创建一个 person表,主键为Id,hash方式分片,主键自增(采用数据库方式) #person表结构如下 Id,主键,Mycat自增主键 name,字符串,16字节最长 school,毕业学校,数 ...
- Mycat实战之配置EP分片
ER分片介绍 以mycat逻辑库里面自带的例子,例如客户(CUSTOMER)跟订单(orders)以及订单条目(orders_item),订单条目依 赖订单表,订单表依赖客户,这样客户与订单以及订单条 ...
- Mysql系列六:(Mycat分片路由原理、Mycat常用分片规则及对应源码介绍)
一.Mycat分片路由原理 我们先来看下面的一个SQL在Mycat里面是如何执行的: , ); 有3个分片dn1,dn2,dn3, id=5000001这条数据在dn2上,id=10000001这条数 ...
- mycat 分页慢原理解析、mycat跨事务解惑、mycat注解调用存储过程分析
1结合Mycat日志,分析select * from travelrecord order by id limit100000,100 的运行过程,解释下当limit M,N中的M非常大的情况下.为什 ...
- Mycat分布式数据库架构解决方案--Mycat实现读写分离
echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 安装完 ...
- Mycat分布式数据库架构解决方案--Mycat实现数据库分表
echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 准备工 ...
- MyCat(1.2)Mycat的安装
[0]基本环境 OS:CentOS7.5 Software envireonment:JDK1.7.0 Master Software:Mycat1.6.5 Linux Client:CRT 8.0 ...
- Dubbo入门到精通学习笔记(二十):MyCat在MySQL主从复制的基础上实现读写分离、MyCat 集群部署(HAProxy + MyCat)、MyCat 高可用负载均衡集群Keepalived
文章目录 MyCat在MySQL主从复制的基础上实现读写分离 一.环境 二.依赖课程 三.MyCat 介绍 ( MyCat 官网:http://mycat.org.cn/ ) 四.MyCat 的安装 ...
随机推荐
- SpringCore完整学习教程4,入门级别
本章从第4章开始 4. Logging Spring Boot使用Commons Logging进行所有内部日志记录,但保留底层日志实现开放.为Java Util Logging.Log4J2和Log ...
- TCP连接断开:为什么要挥手四次
本文分享自华为云社区<解密TCP连接断开:四次挥手的奥秘和数据传输的安全>,作者: 努力的小雨 . TCP 连接断开 在当今数字化时代,互联网已经成为了人们生活中不可或缺的一部分.而在互联 ...
- flchart库判断当前点击的底部title的index
使用flchart库,版本0.35,在点击柱状图时,当柱状图的高度为0,默认选中热区很小,很难点击选中对应区域,如图一 9和10的柱状图高度为0. 查了源码,貌似没有单独针对底部title设置点击事件 ...
- setup的执行时机
setup是在beforeCreate之前执行的,也就是vue实例还未被创建,因为setup中并没有this指针 <script> export default { setup() { c ...
- emoji表情符号备忘单
记录目的:写文章的时候想用一些小表情或图片,但是上传图片太麻烦还不兼容 emoji表情符号就是很好的选择 国际通用,开箱即用(复制粘贴),兼容性强(理论上能放文本就能放emoji) 博客文档,git文 ...
- 文心一言 VS 讯飞星火 VS chatgpt (166)-- 算法导论13.1 6题
六.用go语言,在一棵黑高为 k 的红黑树中,内部结点最多可能有多少个?最少可能有多少个? 文心一言: 红黑树是一种自平衡的二叉查找树,其中每个节点都有一个颜色属性,可以是红色或黑色.红黑树满足以下性 ...
- Windows系统修复(System Update Readiness Tool、SFC模式、DISM命令)可解决系统更新问题。
安装System Update Readiness Tool 提供此更新是因为在 Windows servicing store 中发现了不一致,这可能会影响将来成功安装更新.service pack ...
- Java的特性、内容和环境的配置
Java的特性和优势 简单性 面向对象 可移植性 高性能 分布式 动态性 多线程 安全性 健壮性 JDK包含JRE包含JVM JDK:Java Development Kit JRE:Java Run ...
- 在ASP.NET Core微服务架构下使用RabbitMQ如何实现CQRS模式
前言 在现代软件开发中,微服务架构和CQRS模式都是备受关注的技术趋势.微服务架构通过将应用程序拆分为一系列小型.自治的服务,提供了更好的可伸缩性和灵活性.而CQRS模式则通过将读操作和写操作分离,优 ...
- vue3 + vite + ts 配置 @ 别名
第一步 npm install @types/node -D 第二步 这是原 vite.config.ts文件 import { defineConfig } from 'vite' import v ...