千家信息网

MYSQL数据库的基本架构

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要讲解了"MYSQL数据库的基本架构",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"MYSQL数据库的基本架构"吧!MYSQL内部可分为两大部
千家信息网最后更新 2025年02月02日MYSQL数据库的基本架构

这篇文章主要讲解了"MYSQL数据库的基本架构",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"MYSQL数据库的基本架构"吧!

MYSQL内部可分为两大部分:Server层和存储层

server层中大致包含了以下部分:

  • 连接器

  • 查询缓存

  • 分析层

  • 优化层

  • 执行层

首先介绍一下连接器

每次进入mysql前都需要登录,其实这就是在跟连接器打交道,你将登录信息给它检查,它提供你在该数据库操作中拥有的权限,我们所需要提供的登录信息如下所示:

mysql -h 主机ip -u 用户名 -p 密码

连接分为两种:长连接和短连接

长连接是指:连接成功后,如果客户端不断请求(执行sql语句),则一直使用同一个连接

短连接是指:每次执行完很少的几次查询就断开连接,下次查询需要重新建立新的连接

它们也各有各的优缺点:


运行效率占用内存空间
长连接当积累的数据大时,占用的内存是很大的
短连接

当长连接积累的数据大到内存装不下的时候,数据库会自动断开连接,也可以称为异常重启,但是这个问题也是有办法解决的:

  • 定期断开连接

  • 执行命令 mysql_reset_connection(重新初始化连接资源)

因为每次重新建立连接其实是很累的,效率也很低,所以一般都是使用长连接

有时候想查看数据库的连接状态,可以执行这个命令:

show processlist

有两种状态:空闲(sleep)和连接(query)两个

如果一定时间内一直没有操作数据库,那么它会自动断开连接,如果还要继续操作,就得重新建立新的连接

接下来介绍一下 查询缓存

缓存就是之前操作的信息暂时存储在一个地方,查询就是查找之前操作过的信息

那在数据库中,查询缓存就是查询之前执行过的sql语句,这样的运行效率会很高,但是也有一个缺点就是表已更新,它就失效了。。所以一般不用,除非那表是静态的,就是很长时间都不会更新的那种

为什么说查询缓存效率高呢?因为执行一个新的sql语句是需要很多流程的,当然使用的时候并没有表现出来。那现在就来一一介绍这些流程

当用户与数据库建立连接后,接下来就到了分析层。

分析层又分为两部分:词法分析和语义分析。

词法分析就是分析输入的mysql语句中的每个单词是什么意思,比如分析 show databases;这个语句。[show]是[查看]的意思,[databases]是指所有的数据库,所以这个语句就是用来查看所有数据库的。分析完每个词的意思后,接着就是判断是否符合mysql的语法,就跟咱学的英语是一样的。语法没问题后就继续往下执行,来到优化层。

优化层也分为两部分:判断使用哪个索引和决定各表的连接顺序

如果你的数据表中有很多个字段可以作为索引条件的话,优化层就会自动判断使用最适合的那个索引。如果有多个表进行关联,那它就会判断各个表的连接顺序。总的来说还是挺方便和智能的

万事俱备,只差执行,优化层结束后就来到了执行层。

开头我们说了,数据库是用来存储数据的,那肯定有存储引擎,存储引擎属于存储引擎层,而不是sercver层。

MYSQL的存储引擎大致有三种:innoDB(默认)、Memory、MylSAM。

那这么多存储引擎在哪里选择呢?答案就是执行层阶段,执行层的作用就是选择存储引擎,默认是innoDB,你也可以选择其他的,通过执行" engine= 存储引擎名 "来进行切换。除此之外,执行层还要确定该用户有没有执行该语句的权限,没有的话就会报错


最后,就是在存储引擎中对数据进行一系列操作啦,比如查询、插入、删除和修改等

感谢各位的阅读,以上就是"MYSQL数据库的基本架构"的内容了,经过本文的学习后,相信大家对MYSQL数据库的基本架构这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

数据 数据库 就是 存储 分析 查询 引擎 语句 执行层 缓存 架构 信息 效率 内存 意思 用户 索引 连接器 部分 问题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 佛山在线代理服务器联系方式 网络安全保卫员个人总结 华为被停国际网络安全会员资格 东农网络技术有限公司怎么样 要更改数据库管理器配置文件 顺德民宿软件开发 奉贤区智能软件开发收费 网络安全审查和信安从业者 我的世界梦世界服务器怎么建领地 信息网络安全和政治安全 淮安网站服务器厂家直供 贵阳清镇计算机网络技术 收银机显示数据库连接失败 软件开发工资一般是多少钱一个月 hbase json 数据库 360网络安全平台 国美易拉连接不上服务器 机务段网络安全宣传周 日历重复事件数据库设计 星贝科技无线互联网 计算机网络技术基础第二版盛立军 新一代无线网络技术 2019年网络安全法考试 我的世界服务器怎么加入多功能 收费下载软件开发模板 安徽网络服务器机柜哪里有 充电桩数据采集用什么数据库 服务器的三种 raci模型 软件开发 数据库的安全约束
0