`
hongtoushizi
  • 浏览: 377029 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

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

阅读更多

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

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

执行show status指令显示的部分结果执行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 '状态项名称']
--统计范围关键字分为GLOBALSESSION(或LOCAL)两种。

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

show global status like 'com_select';

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

  1. --查看MySQL本次启动后的运行时间(单位:秒)
  2. show status like 'uptime';
  3. --查看select语句的执行数
  4. show [global] status like 'com_select';
  5. --查看insert语句的执行数
  6. show [global] status like 'com_insert';
  7. --查看update语句的执行数
  8. show [global] status like 'com_update';
  9. --查看delete语句的执行数
  10. show [global] status like 'com_delete';
  11. --查看试图连接到MySQL(不管是否连接成功)的连接数
  12. show status like 'connections';
  13. --查看线程缓存内的线程的数量。
  14. show status like 'threads_cached';
  15. --查看当前打开的连接的数量。
  16. show status like 'threads_connected';
  17. --查看当前打开的连接的数量。
  18. show status like 'threads_connected';
  19. --查看创建用来处理连接的线程数。如果Threads_created较大,你可能要增加thread_cache_size值。
  20. show status like 'threads_created';
  21. --查看激活的(非睡眠状态)线程数。
  22. show status like 'threads_running';
  23. --查看立即获得的表的锁的次数。
  24. show status like 'table_locks_immediate';
  25. --查看不能立即获得的表的锁的次数。如果该值较高,并且有性能问题,你应首先优化查询,然后拆分表或使用复制。
  26. show status like 'table_locks_waited';
  27. --查看创建时间超过slow_launch_time秒的线程数。
  28. show status like 'slow_launch_threads';
  29. --查看查询时间超过long_query_time秒的查询的个数。
  30. show status like 'slow_queries';

 

转载自: http://www.365mini.com/page/mysql-show-status.htm

分享到:
评论

相关推荐

    mysql中status状态说明

    根据status状态对Mysql数据库进行优化: 1、连接数  1.1 show variables like ‘max_connections’;  1.2、 show global status like ‘Max_used_connections’; 1.3、设置最大连接数值方法:    mysqld服务器...

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

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

    实验1 MySQL数据库服务器配置.docx

    * 查看系统状态参数的方法:使用SHOW STATUS命令查看系统状态参数,了解系统的状态信息。 * 查看服务器变量设置的方法:使用SHOW VARIABLES命令查看服务器变量设置,了解服务器的配置信息。 实验1-12:使用命令...

    通过showstatus来优化MySQL数据库

    通过 show status 命令可以获取 MySQL 数据库的各种状态信息,从而对数据库进行优化。下面是通过 show status 命令获取的信息和对应的优化建议: 1. 慢查询配置:通过 show variables like '%slow%' 和 show global...

    国家开放大学 数据库运维 形考一 MySQL数据库服务器配置

    可以使用 SHOW STATUS 命令查看系统状态参数,使用 SHOW VARIABLES 命令查看服务器变量设置。 MySQL 安装目录和数据存放目录: 可以使用命令“select @@basedir”和“select @@datadir”寻找到 MySQL 的安装目录和...

    查看Mysql运行状态

    - **SHOW STATUS**:该命令用于显示 MySQL 服务器的状态变量,可以不带参数显示所有状态变量,或者通过 LIKE 关键字指定部分变量进行显示。 ```sql SHOW STATUS; SHOW STATUS LIKE 'Key%'; ``` - **SHOW ...

    mysql巡检报告.pdf

    * 检查方法:使用 show [full] processlist 和 show status like 'Threads%' 命令查看线程明细 * 结果解释:检查结果正常,Threads_cached 44,Threads_connected 1,Threads_created 45,Threads_running 1,sort_...

    MySQL数据库服务器优化详细

    本文将深入解析MySQL数据库服务器优化的关键点,涵盖配置参数调整、状态监控以及系统资源管理等多方面内容。 #### 监控与状态检查 优化MySQL数据库的首要步骤是充分了解当前系统的运行状态。通过以下命令,我们...

    数据库运维 形考任务1 实验1 MySQL数据库服务器配置.pdf

    5. **错误日志查看**:MySQL的错误日志记录了服务器运行时的错误信息,一般在数据存放目录下,通过`tail -f error.log`查看实时内容。 6. **启用日志功能**:包括二进制日志(binlog)、慢查询日志和通用查询日志。...

    mysql常用性能查询语句

    该语句可以查看 MySQL 服务器自上次启动以来的运行时间,以秒为单位。 2. 查看 select 语句的执行数 使用语句:show status like 'com_select'; 该语句可以查看 MySQL 服务器自上次启动以来的 select 语句执行...

    [绝对原创]Linux图解教程:使用rpm安装MySQL数据库服务器.docx

    ### 使用RPM在Linux上安装MySQL数据库服务器 #### 一、引言 在Linux环境下部署MySQL数据库服务器是一项常见的任务,特别是在构建服务器环境时。本文将详细介绍如何通过RPM包管理系统来安装MySQL数据库服务器及其...

    mysql优化(1)show命令 慢查询日志 explain profiling

    它可以帮助我们查看数据库的状态、配置参数、表结构等,为优化提供基础数据。例如: 1. `SHOW VARIABLES;`:显示当前MySQL服务器的所有系统变量,这有助于了解服务器的配置情况,如内存使用、字符集设置等。 2. `...

    MySQL内存优化:释放数据库性能的金钥匙

    通过上述方法,我们可以有效地监控并优化MySQL的内存使用,从而达到提升性能的目的。需要注意的是,在进行任何配置调整之前,都应当充分评估当前系统环境,并在测试环境中验证更改的效果,确保不会对生产环境造成...

    mysql主从同步和一台服务器两个mysql

    mysql> show master status; ``` 从服务器配置 在从服务器上,我们需要配置从服务器,以便连接主服务器并进行数据同步。配置步骤将在下一节中介绍。 从上面的介绍中,我们可以看到,配置主从同步需要两个 MySQL ...

Global site tag (gtag.js) - Google Analytics