MySQL使用show status查看MySQL服务器状态信息
16lz
2022-01-03
在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)
show status like 'com_select';
+---------------+-------+| Variable_name | Value |+---------------+-------+| Com_select | 1 |+---------------+-------+1 row in set (0.00 sec)
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 '状态项名称']--统计范围关键字分为GLOBAL和SESSION(或LOCAL)两种。
show global status like 'com_select';
--查看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';
更多相关文章
- 如何去掉状态栏和内容视图之间的黑色阴影线
- Android(安卓)--- Activity生命周期
- Android设置通知栏/状态栏透明改变通知栏颜色和app最上部分颜色
- Android(安卓)热点开关状态的判断和获取热点ssid
- Android的网络状态判断
- Selector、shape详解(一)
- android 面试题集
- android手机客户端上传文件,java servlet服务器端接收并保存到服
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)