【MySQL】MyCAT入门综述◆掌握MyCAT的基础概念、功能及适用场景

news2024/11/16 9:40:45

📫作者简介:小明java问道之路,专注于研究 Java/Liunx内核/C++及汇编/计算机底层原理/源码,就职于大型金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。

        

📫 热衷分享,喜欢原创~ 关注我会给你带来一些不一样的认知和成长。

        

🏆 CSDN博客专家 | CSDN后端领域优质创作者 | CSDN内容合伙人 | 2022博客之星

🏆 InfoQ(极客邦)签约作者、阿里云专家 | 签约博主、51CTO专家 | TOP红人、华为云享专家

        

🔥如果此文还不错的话,还请👍关注、点赞、收藏三连支持👍一下博主~ 


🍅 文末获取联系 🍅  👇🏻 精彩专栏推荐订阅收藏 👇🏻
        

专栏系列(点击解锁)

学习路线(点击解锁)

知识定位

🔥Redis从入门到精通与实战🔥

Redis从入门到精通与实战

围绕原理源码讲解Redis面试知识点与实战

🔥MySQL从入门到精通🔥

MySQL从入门到精通

全面讲解MySQL知识与企业级MySQL实战

🔥计算机底层原理🔥

深入理解计算机系统CSAPP

以深入理解计算机系统为基石,构件计算机体系和计算机思维

Linux内核源码解析

围绕Linux内核讲解计算机底层原理与并发

🔥数据结构与企业题库精讲🔥

数据结构与企业题库精讲

结合工作经验深入浅出,适合各层次,笔试面试算法题精讲

🔥互联网架构分析与实战🔥

企业系统架构分析实践与落地

行业最前沿视角,专注于技术架构升级路线、架构实践

互联网企业防资损实践

互联网金融公司的防资损方法论、代码与实践

🔥Java全栈白宝书🔥

精通Java8与函数式编程

本专栏以实战为基础,逐步深入Java8以及未来的编程模式

深入理解JVM

详细介绍内存区域、字节码、方法底层,类加载和GC等知识

深入理解高并发编程

深入Liunx内核、汇编、C++全方位理解并发编程

Spring源码分析

Spring核心IOC/AOP等源码分析

MyBatis源码分析

MyBatis核心源码分析

Java核心技术

只讲Java核心技术

本文目录

本文目录

本文导读

一、MyCAT入门

二、MyCAT作为数据库中间层

三、MyCAT实现读写分离和负载均衡

四、MyCAT对数据库进行垂直/水平切分

五、MyCAT优点

六、MyCAT安装

总结


本文导读

掌握MyCAT的基本概念,MyCAT的应用场景和优缺点,掌握MyCAT安装和启动。

一、MyCAT入门

MyCAT是Java语言编写的MySQL数据库网络协议的开源中间件。

MyCAT 相当于MySQL SERVER层,MySQL就相当于MyCAT的存储层。MyCAT不存储数据所有数据都存储在MySQL中。我们可以理解MyCAT是MySQL。MyCAT对开发人员是透明的。MyCAT对使用的SQL有一些限制。

二、MyCAT作为数据库中间层

 MyCAT是一个数据库中间层位于前端应用与后端数据库中间,可以为后端数据库实现数据库分库分表和读写分离,MyCAT为应用程序隐藏后端数据库的存储逻辑 。

三、MyCAT实现读写分离和负载均衡

MyCat 可以实现数据库负载均衡/读写分离,搭建之前保证数据库的数据一致,将两个主机互为主从,互相实现挂载,主即从。

MyCat 主从配置步骤:

1、编辑主数据库的配置文件以打开二进制日志并检查是否已启用
2、编辑从库配置(server-id 值不同,其他操作一致)
3、主从数据库挂载(如果需要数据库的主从同步,则应从从数据库安装到主数据库)

四、MyCAT对数据库进行垂直/水平切分

逻辑库:对于应用程序相当于MySQL中的数据库。逻辑库可以对应于后端的多个物理数据库,而无需保存数据(订单库、商品库……)

逻辑表:对于应用程序相当于MySQL中的数据表。逻辑表可以对应于后端多个物理数据库中的表,也不保存数据(商品、商品、配送信息表……)

五、MyCAT优点

高性能:支持并行拉取结果集、支持自动调动后端结果集、支持多种路由注释、优化器注释

优化:对请求的sql进行参数化、缓存物理执行计划、相同参数化sql的请求、将免去一些分析优化过程

优化查询计划:定制Calcite分布式查询引擎、编译SQL到关系代数表达式、规则优化引擎和代价优化引擎、生成物理执行计划、支持逻辑视图

支持定制任意多字段路由:提供分片算法接口、优化器简化过滤条件、分片信息与关系表达式结合生成执行sql

SQL支持语法:任意跨库跨表join查询、支持跨库跨表非关联子查询、支持跨库跨表关联子查询、支持跨库跨表Window语法、支持全局二级索引、有限支持存储过程、支持可视化配置

支持原生协议:前端协议MySQL网络通信协议、MySQL原生网络协议异步非阻塞、JDBC接口支持多种数据库、生成物理执行计划

六、MyCAT安装

MyCAT的安装步骤

1、下载并解压MYCAT(官网 mycat.org.cn/)
2、安装JAVA运行环境(JDK1.7及以上)
3、新建mycat运行系统账号
4、配置系统环境变量
5、修改mycat启动参数

总结

掌握MyCAT的基本概念,MyCAT的应用场景和优缺点,掌握MyCAT安装和启动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/173640.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

二叉树知识概括锦囊(一)

作者:爱塔居 专栏:数据结构 作者简介:大三学生,希望跟大家一起进步! 文章目录 目录 文章目录 一、树形结构 二、树的基础知识 三、二叉树 3.1 概念 3.2 特殊的二叉树 3.3 二叉树的性质 四、习题挑战 一、树形结构 树是…

【论文速递】IJCV2022 - CRCNet:基于交叉参考和区域-全局条件网络的小样本分割

【论文速递】IJCV2022 - CRCNet:基于交叉参考和区域-全局条件网络的小样本分割 【论文原文】:CRCNet: Few-shot Segmentation with Cross-Reference and Region-Global Conditional Networks 获取地址:https://link.springer.com/article/10.1007/s112…

BACnet协议详解——应用层说明一

文章目录写在前面1. 应用层模型1.1 需确认的应用层服务1.2 无需确认的应用层服务2 BACnet报文的分段2.1 报文分段规则2.1.1 APDU数据流的分段规则2.1.2 APDU最大长度的确定2.1.3 可接受的最大分段数2.2 分段协议控制信息(PCI)写在前面 年关将至&#xf…

分享77个PHP源码,总有一款适合您

PHP源码 分享77个PHP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下..., 77个PHP源码下载链接:https://pan.baidu.com/s/12hh-lhIVPL1bZw-d2sfVlQ?pwdvhqj 提取码&#xff…

selenium 操作已经打开的浏览器

有时通过selenium打开网站时,发现有些网站需要扫码登录,就很头疼,导致爬虫进展不下去。 如果继续想使用selenium进行数据抓取,下一步应该怎么办呢? 步骤一:创建文件夹 在电脑的D盘或者F盘或者合适的盘创建…

《Python数据分析基础教程:NumPy学习指南:第二版》读书笔记

内容 主要介绍了NumPy库中的函数。 组成方式 用非常零散的知识点串联成章节。 内容摘要 极简地展示了章节中所运用的函数。 第一章 arrange函数创建NumPy数组。 第二章 NumPy特性 在NumPy中,复数的虚部是用j表示的。如果数组中包含复数元素,则…

VMware vSphere 中 Clone 与 Template 的区别

VMware vSphere 中 Clone 与 Template 的区别 Clone(克隆)Template(模板)克隆在克隆过程中为正在运行的虚拟机创建一个精确的副本模板作为具有根据组织标准预先定义的配置的虚拟机的基线映像。克隆虚拟机使用相同的配置和安装的软…

【C语言初阶】指针

文章目录1.指针是什么2.指针和指针类型2.1指针的解引用2.1指针类型的意义3.野指针3.1野指针成因3.2如何规避野指针4.指针运算4.1指针-整数4.2指针-指针4.3指针的关系运算5.指针和数组6.二级指针7.指针数组1.指针是什么 指针理解的2个要点: 指针是内存中一个最小单元…

【GD32F427开发板试用】+使用USBFS轻松实现HID键盘应用

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:不锈钢铁侠 前言 最近有项目需要用到键盘自动输入功能,提升工作效率。故使用该开发板实现自定义输入内容并通过按键控制自动通过u…

STM32——外部中断

目录 外部中断简述 什么是外部中断 传统单片机与新型单片机外部中断区别 STM32外部中断请求 STM32中断线与IO口的对应 STM32 中断服务函数 外部中断与中断服务函数的对应 中断服务函数列表 STM32外部中断程序编写 常用的库函数 外部中断的一般配置步骤 外部中断简…

【ArcGIS微课1000例】0058:波段合成(CompositeBands)工具的使用

波段合成工具常见于遥感软件,例如Envi和Erdas等,用于将多个单波段数据合成为一个多波段数据集,在ArcGIS中也提供了波段合成的工具,使用灵活方便。 文章目录 一、波段合成工具介绍二、波段合成工具案例1. 输出Esri Grid格式2. 输出tif格式3. 输出jgp格式4. 输出其它格式一、…

sqlite 使用distinct时组合索引可能不是你想的那样

目录先来唠唠嗑吧~那一探究竟吧!表结构及索引信息我的查询场景到底命中什么索引了?简单小结下~先来唠唠嗑吧~ 在使用sqlite作为词条数据库查询数据,发现有的sql执行很快,有的sql执行很慢,你以为是没有走索引吗&#x…

深入浅出进程控制

文章目录进程控制浅谈fork写时拷贝fork调用失败的原因进程终止进程退出的场景进程常见退出方法查看进程退出码echo $? :查看进程退出码exit和_exit进程等待进程等待的方法waitwaitpid获取子进程status宏定义查看进程是否正常退出,查看退出码再谈僵尸进程浅谈阻塞等…

基于.Net Core开发的支付SDK,简化支付功能开发

更多开源项目请查看:一个专注推荐.Net开源项目的榜单 在我们做项目中,不管是电商系统、外卖系统、还是上门维修系统等等,都需要支付功能,这就需要我们与第三方支付平台进行对接,但是第三方平台文档,往往都存…

05语法分析——自下而上分析

文章目录一、自下而上分析基本问题二、算符优先分析构造FIRSTVT(P)的算法构造LASTVT(P)的算法构造优先表的算法三、LR分析法1.LR(0)构造LR(0)项目集规范族构造识别活前缀的DFA构造LR(0)分析表2.SLRSLR解决冲突办法SLR(1)分析表的构造算法3.LR(1)【规范LR】LR(1)项目集I的闭包状…

【MySQL基础】运算符及相关函数详解

序号系列文章3【MySQL基础】MySQL基本数据类型4【MySQL基础】MySQL表的七大约束5【MySQL基础】字符集与校对集详解6【MySQL基础】MySQL单表操作详解文章目录前言MySQL运算符1,算术运算符1.1,算术运算符的基本使用1.2,常用数学函数的基本使用2…

iOS:OpenGLES 实验室之2D篇 第一弹 の 智能弹幕

本文字数:3046字预计阅读时间:15 分钟iOS:OpenGLES 实验室之2D篇 第一弹 の 智能弹幕笔者之前发表的音视频文章,有图像的处理,音频的重采样等等,都属于入门级别。通过阅读它们,读者能对音视频有…

【复习 自用】JavaScript知识汇总(DOM)

注:之前学过JavaScript,本贴仅用于复习(自用),建议没基础的朋友先学基础。会混入typescript! 更新中~~~~~ Dom核心内容 创建节点 ① document.write() 是直接将内容写入页面的内容流,但是文档流执行完毕&#xff0c…

云原生技能树-docker caontainer 操作

运行 一个Docker镜像(image)运行后,就是一个容器实例,称为container 以镜像hello-world为例,启动容器: docker container run -it hello-world 可以看到输出了Hello World 信息: 以下描述错误的是? 答…

数字逻辑理论——从卡诺图到门电路

卡诺图化简 卡诺图化简 第一步:在卡诺图中圈出相邻为1的小方格(方格的个数为2m2^{m}2m),圈里面的1越多越好,并且这个小方格可以重复使用。 第二步:上一步中的方格或者圈出来的方框——每一个都代表一个与…