千家信息网

MYSQL数据交互原理与性能问题分析

发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,我们在性能测试监控MYSQL数据库时,作为专业非功能性测试人员,我们需要了解操作系统工作原理、业务实现架构逻辑、应用架构实现逻辑、数据库工作原理,才能真正的做好非功能性测试,而大部分业务型交易问题都是
千家信息网最后更新 2025年11月13日MYSQL数据交互原理与性能问题分析

我们在性能测试监控MYSQL数据库时,作为专业非功能性测试人员,我们需要了解操作系统工作原理、业务实现架构逻辑、应用架构实现逻辑、数据库工作原理,才能真正的做好非功能性测试,而大部分业务型交易问题都是因为数据库问题原因产生的性能瓶颈,而更多数情况都是因为对数据库出现问题的情况和处理思路不清晰。在进行MySQL的优化之前必须要了解的就是MySQL的查询过程,也就是实际前端业务操作到从磁盘捞取数据整个实现过程如果运作,了解了这些,明白查询优化是遵循MySQL优化器方式运行,具体如下图:


根据上图所示我们了解到,无论是手机端还是PC端,例如我们点餐系统,通过APP客户端,我们查询要点的餐饮,这时通过网络连接同数据库服务层建立TCP连接。

读写数据方式
1、步骤一与数据库连接建立:
连接管理模块会建立连接,并请求一个连接线程。如果连接池中有空闲的连接线程,则分配给这个连接,如果没有,在没有超过最大连接数的情况下,创建新的连接线程负责这个客户端。

2、步骤二检查语法
接下来验证用户是否有权限。例如你有注册,查看该用户是会员用户,方可提供点餐服务,连接线程开始接收并处理来自客户端的SQL语句。连接线程接收到SQL语句之后,将语句交给SQL语句解析模块进行语法分析和语义分析。

3、步骤三检查缓存
如果是查询语句,则可以先看查询缓存中是否有结果,如果有结果可以直接返回给客户端。

4、步骤四检查引擎优化
如果查询缓存中没有结果,就需要真的查询数据库引擎层了,于是发给SQL优化器,进行查询的优化。就是请求数据库引擎层,打开表,接下来的处理过程就到了数据库引擎层,例如InnoDB。

5、步骤五,数据读取方式
在数据库引擎层,要先查询缓存是否有数据,如果有直接返回,如果没有就要从磁盘上去读取,把磁盘中找到相应的数据加载到缓存中,下次读取直接从缓存读取从而使得后面的查询更加高效。

6、步骤六,关闭连接
获取数据后返回给客户端,关闭连接,释放连接线程,过程结束。

性能问题分析:
如果语法写的有问题,则在从磁盘捞取数据时会出现磁盘IO高或者CPU高,那就是语法写法问题或者索引使用问题,如果语法分析没问题,则看缓存页配置是否太小了,或者本身物理内存就小,给缓存的空间就少了。

数据 数据库 查询 问题 缓存 步骤 线程 客户 引擎 磁盘 语句 语法 分析 客户端 过程 性能 业务 就是 情况 方式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 百度软件开发者中心 车载网络技术考试题库 天津途致臻网络技术怎么样 数据库中更改字段数据 麻工互联网科技有限公司 软件开发做不动了要怎么办 软件开发怎么成为项目经理 敏捷软件开发中文 win7显示数据库找不到 中国网络技术学院 武汉软件开发驻场流程 服务器数据返回无效怎么回事 2021网络技术考试 医药行业数字化网络安全 电脑拨号软件开发 呼市招商银行网络安全宣传 不同服务器的数据可以沟通吗 天津网络时间服务器配套虚拟主机 关系型数据库支持sql语言 巴州网络安全和信息化 php 获取服务器详细信息 科技界最火的卫星互联网 聊城戴尔服务器哪个系列好 服务器 dell 西北大学计算机网络技术考试 亿联会议如何设置服务器地址 日本自卫队网络安全分析装置 程序员怎么打开数据库 暨南大学计算机网络安全好不好 指定静态服务器目录
0