博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图解MySQL5原理与架构
阅读量:6243 次
发布时间:2019-06-22

本文共 591 字,大约阅读时间需要 1 分钟。

MySQL是比较常用的关系型数据库,对于使用MySQL作为存储的系统,MySQL的优化对于系统的性能至关重要,包括SQL的优化,然而要想做好优化,首先要对其总体有所了解,本文浅析了MySQL的总体架构思想,让我们更加了解MySQL。

1、插件的架构思想:

MySQL的架构是插件形式,插件的特点是热插拔,就是系统不需要停机就可以完成加载和卸载,绝大多数的插件架构如图:

MySQL的总体架构如图:

SQL Layer主要的工作是将SQL语句翻译成C++方法(函数),具体的架构如下:

 

我自己整理了一个下:

MySQL将存储引擎做成插件的方式,方便了不同的使用场景,但是最常用的还是支持事务的innodb引擎。

2、存储引擎:

引擎其实对于程序来说是算法集或方法集,现成可以调用的方法,不同的MySQL存储引擎的存储方式是不同的,对于支持事务的innodb存储引擎使数据满足ACID原则,MySQL自身有个表存储了一些引擎的配置:

3、SQL优化:

SQL的性能取决于操作对象的数据量大小,为了减小操作的数据量,我们通常会为表建立索引,索引在MySQL中的数据结构是B-Tree,由于B-Tree的查找性能特别好,大大地减少了我们要操作的数据量。

通常还有就是使用缓存,缓存减少了IO的操作,MySQL中有执行计划可以让我们预览我们的SQL执行效果,在SQL语句前加上explain。

你可能感兴趣的文章
第一个掘金文章
查看>>
最酷的深度学习聊天机器人资源集合
查看>>
SVG 在 image 标签中的动态修改技巧
查看>>
js的三种编码解码方法
查看>>
7月31日云创大会游戏论坛门票0元抢!
查看>>
a标签href不跳转 How?
查看>>
WebP进阶篇--Gif2WebP
查看>>
Java基础-- ==号与equals()方法的区别
查看>>
VARCHART XGantt实践:兼顾清晰和细节的排列优化
查看>>
小程序实现人脸识别功能
查看>>
Flora图像风格迁移App
查看>>
常用数组方法梳理
查看>>
JavaScript(4)之——前端模块化
查看>>
数字图像处理----图像旋转
查看>>
iOS 报错 Library not found lPods AFNetworking
查看>>
Spark性能优化:数据本地化优化
查看>>
Java中几个常用类介绍
查看>>
程序员为什么要高薪?看完让你勇于为自己开价
查看>>
(八)spring cloud微服务分布式云架构- Spring Cloud 组件和概念介绍
查看>>
由 Tagged Pointer 联想到的一个问题
查看>>