MySQL使用show status查看MySQL服务器状态信息

发布时间 - 2026-01-10 22:24:39    点击率:

在LAMP架构的网站开发过程中,有些时候我们需要了解MySQL的服务器状态信息,譬如当前MySQL启动后的运行时间,当前MySQL的客户端会话连接数,当前MySQL服务器执行的慢查询数,当前MySQL执行了多少SELECT语句、执行了多少UPDATE/DELETE/INSERT语句等统计信息,从而便于我们根据当前MySQL服务器的运行状态进行对应的调整或优化工作。

在MySQL中,我们可以使用SHOW STATUS指令语句来查看MySQL服务器的状态信息。下面,我们以DOS命令窗口的形式连接MySQL,并执行show status;指令,我们将看到如下显示信息:

当我们执行show status语句时,MySQL将会列出多达300多条的状态信息记录,其中包括了供我们查看了解的各种信息。不过,如果直接使用show status指令得到300多条记录,会让我们看得眼花缭乱,因此我们希望能够「按需查看」一部分状态信息。这个时候,我们可以在show status语句后加上对应的like子句。例如,我们想要查看当前MySQL启动后的运行时间,我们可以执行如下语句:

--查询当前MySQL本次启动后的运行统计时间
show status like 'uptime';

此时,我们就可以看到如下结果:

+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Uptime    | 5667 |
+---------------+-------+
1 row in set (0.00 sec)

同样的,如果我们要本次MySQL启动后执行的SELECT语句的次数,我们可以执行如下语句:

show status like 'com_select';

对应输出结果如下:

+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Com_select  | 1   |
+---------------+-------+
1 row in set (0.00 sec)

此外,与WHERE子句中的LIKE关键字类似,show status后的LIKE关键字也可以使用'_' 或'%'等通配符来进行模糊匹配。例如我们可以执行如下语句来查看MySQL服务器的线程信息:

show status like 'Thread_%';

对应输出结果如下:

+-------------------+-------+
| Variable_name   | Value |
+-------------------+-------+
| Threads_cached  | 0   |
| Threads_connected | 1   |
| Threads_created  | 1   |
| Threads_running  | 1   |
+-------------------+-------+
4 rows in set (0.00 sec)

值得注意的是,在上述show status like 'com_select'指令的执行示例中,显示的SELECT语句统计信息仅仅表示当前会话连接执行的SELECT语句数量。因为,show status指令的完整语法如下:

SHOW [统计范围] STATUS [LIKE '状态项名称']
--统计范围关键字分为GLOBAL和SESSION(或LOCAL)两种。

在show status的完整语法中,"[]"中的部分是可选的,如果我们的show status语句中不包含统计范围关键字,则默认统计范围为SESSION,也就是只统计当前连接的状态信息。如果我们需要查询自当前MySQL启动后所有连接执行的SELECT语句总数,我们可以执行如下语句:

show global status like 'com_select';

以上即是show status的详细用法。由于show status的状态统计项较多,我们就不再一一解释每个统计项的具体含义,在这里,我们仅列出部分常用的状态信息查看语句:

--查看MySQL本次启动后的运行时间(单位:秒)
show status like 'uptime';

--查看select语句的执行数
show [global] status like 'com_select';

--查看insert语句的执行数
show [global] status like 'com_insert';

--查看update语句的执行数
show [global] status like 'com_update';

--查看delete语句的执行数
show [global] status like 'com_delete';

--查看试图连接到MySQL(不管是否连接成功)的连接数
show status like 'connections';

--查看线程缓存内的线程的数量。
show status like 'threads_cached';

--查看当前打开的连接的数量。
show status like 'threads_connected';

--查看当前打开的连接的数量。
show status like 'threads_connected';

--查看创建用来处理连接的线程数。如果Threads_created较大,你可能要增加thread_cache_size值。
show status like 'threads_created';

--查看激活的(非睡眠状态)线程数。
show status like 'threads_running';


--查看立即获得的表的锁的次数。
show status like 'table_locks_immediate';

--查看不能立即获得的表的锁的次数。如果该值较高,并且有性能问题,你应首先优化查询,然后拆分表或使用复制。
show status like 'table_locks_waited';

--查看创建时间超过slow_launch_time秒的线程数。
show status like 'slow_launch_threads';

--查看查询时间超过long_query_time秒的查询的个数。
show status like 'slow_queries';

上面的内容就介绍到这,其他的可以参考以前的文章。


# MySQL  # show  # status  # Mysql中 show table status 获取表信息的方法  # mysql建表常用的sql语句汇总  # 记一次MySQL更新语句update的踩坑  # Navicat Premium操作MySQL数据库(执行sql语句)  # MySQL两种删除用户语句的区别(delete user和drop user)  # MySQL 数据库 like 语句通配符模糊查询小结  # mysql中写判断语句的方法总结  # MySQL 数据查重、去重的实现语句  # MySQL 常用的拼接语句汇总  # MySQL SHOW STATUS语句的使用  # 我们可以  # 可以使用  # 统计信息  # 多条  # 连接数  # 的是  # 在这里  # 子句  # 将会  # 两种  # 其他的  # 较高  # 看得  # 会让  # 较多  # 这个时候  # 可选  # 当我们  # 即是  # 眼花缭乱 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Laravel如何配置任务调度?(Cron Job示例)  Laravel如何实现数据库事务?(DB Facade示例)  微信公众帐号开发教程之图文消息全攻略  微信小程序 闭包写法详细介绍  晋江文学城电脑版官网 晋江文学城网页版直接进入  如何基于PHP生成高效IDC网络公司建站源码?  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  如何快速搭建高效WAP手机网站吸引移动用户?  Linux网络带宽限制_tc配置实践解析【教程】  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  移动端脚本框架Hammer.js  高防服务器:AI智能防御DDoS攻击与数据安全保障  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  javascript中闭包概念与用法深入理解  简历没回改:利用AI润色让你的文字更专业  如何在阿里云虚拟服务器快速搭建网站?  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  如何在腾讯云服务器快速搭建个人网站?  Laravel如何升级到最新版本?(升级指南和步骤)  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  Laravel如何配置和使用缓存?(Redis代码示例)  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  北京专业网站制作设计师招聘,北京白云观官方网站?  详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南  网站制作大概多少钱一个,做一个平台网站大概多少钱?  使用豆包 AI 辅助进行简单网页 HTML 结构设计  UC浏览器如何设置启动页 UC浏览器启动页设置方法  南京网站制作费用,南京远驱官方网站?  Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制  如何在IIS7中新建站点?详细步骤解析  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel如何自定义分页视图?(Pagination示例)  Python结构化数据采集_字段抽取解析【教程】  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  如何在阿里云域名上完成建站全流程?  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  Laravel如何生成API文档?(Swagger/OpenAPI教程)  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  javascript日期怎么处理_如何格式化输出  如何快速搭建二级域名独立网站?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  微信小程序 HTTPS报错整理常见问题及解决方案