运维:MySQL常用的服务器状态命令

2023年 10月 25日 66.2k 0

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

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

第一个命令:

show processlist

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

第二个命令:

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

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

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

2、查询最大链接数

show variables like '%max_connections%';

3、查询当前链接数

show status like 'Thread%';

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

-- 查询慢MySQL查询的条数
Show status like 'slow_queries';
 
-- 展示当前正在执行的sql语句
show profiles;

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

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

配置方式如下:

修改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';

 

说明: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';

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

SHOW GLOBAL STATUS LIKE 'Com_insert';

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

SHOW GLOBAL STATUS LIKE 'Com_update';

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

SHOW GLOBAL STATUS LIKE 'Com_delete';

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

12、总结

以上是一些常用的服务器状态运行命令。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论