运维:mysql常用的服务器状态命令
作者:mmseoamin日期:2024-04-30

目录

1、查询当前服务器运行的进程

2、查询最大链接数

3、查询当前链接数

4、展示当前正在执行的sql语句

5、查询当前MySQL当中记录的慢查询条数

6、展示Mysql服务器从启动到现在持续运行的时间

7、查询数据库存储占用情况

8、查询服务器启动以来的执行查询的总次数

9、查询服务器启动以来的执行新增的总次数

10、查询服务器启动以来的执行更新的总次数

11、查询服务器启动以来的执行删除的总次数

12、总结


今天给大家分享mysql常用的服务器状态命令 ,希望对大家日常运维mysql数据库或者调优提供一些帮助!

1、查询当前服务器运行的进程

第一个命令

show processlist

查询正在运行的所有MySQL进程,包括进程ID、用户、主机、当前数据库、命令、时间等信息。

运维:mysql常用的服务器状态命令,第1张

第二个命令

select * from information_schema.processlist where command = 'query';

筛选出所有正在运行的SQL语句,可以通过ORDER BY语句来按照时间排序

说明:使用该命令可以进行SQL语句可以用where语句进行筛选,比如数据库名称、命令类型等。

2、查询最大链接数

show variables like '%max_connections%';

运维:mysql常用的服务器状态命令,第2张

3、查询当前链接数

show status like 'Thread%';

运维:mysql常用的服务器状态命令,第3张

4、展示当前正在执行的sql语句

 

-- 查询慢MySQL查询的条数 Show status like 'slow_queries';

-- 展示当前正在执行的sql语句
show profiles;

运维:mysql常用的服务器状态命令,第4张

5、查询当前MySQL当中记录的慢查询条数

运维:mysql常用的服务器状态命令,第5张

注意:需要配置开启慢查询记录。

配置方式如下:

修改MySQL配置参数,根据操作系统不同修改的配置文件如下:

Linux:my.cnf

Windows:my.ini

增加如下配置:

[mysqld]
long_query_time=2   // 慢查询的定义时间(超过2秒就是慢查询)// 慢查询log日志记录( slow_query_log)
## 5.5 版本以下配置
log-slow-queries="mysql-slow-query.log"
## 5.5 版本及以上配置
slow-query-log=on
slow_query_log_file="mysql-slow-query.log"//记录没有使用索引的query
log-query-not-using-indexes

然后重启数据库就会生效。

慢查询常用的命令

-- 查询慢查询的日志路径 
show variables like 'slow_query_log_file';
-- 使用msql提供的日志分析工具mysqldumpslow分析找出查询时间最慢的五条sql
mysqldumpslow -s 5 /mysql/mysql01_slow.log

6、展示Mysql服务器从启动到现在持续运行的时间

show status like 'uptime';

运维:mysql常用的服务器状态命令,第6张

说明:Value的单位为秒

7、查询数据库存储占用情况

 
-- 索引+数据
SELECT table_schema AS `Database`, SUM(data_length + index_length) / 1024 / 1024 AS `Size (MB)` FROM information_schema.TABLES GROUP BY table_schema;

说明:索引+数据之后就是完整的容量了。

8、查询服务器启动以来的执行查询的总次数

 
SHOW GLOBAL STATUS LIKE 'Com_select';

运维:mysql常用的服务器状态命令,第7张

9、查询服务器启动以来的执行新增的总次数

 
SHOW GLOBAL STATUS LIKE 'Com_insert';

运维:mysql常用的服务器状态命令,第8张

10、查询服务器启动以来的执行更新的总次数

SHOW GLOBAL STATUS LIKE 'Com_update';

运维:mysql常用的服务器状态命令,第9张

11、查询服务器启动以来的执行删除的总次数

SHOW GLOBAL STATUS LIKE 'Com_delete';

运维:mysql常用的服务器状态命令,第10张

说明:基于统计数据库的增删改查的次数,可以给数据库是否要做读写分离提供依据。

12、总结

以上是一些常用的服务器状态运行命令,大家如果还有比较常用的命令欢迎补充交流!