MySql 高阶二(SQL 性能分析)

SQL 性能分析:

查看当前数据库的 增删改查的使用情况

sql 复制代码
show global status like 'Com_______';

慢查询日志:

sql 复制代码
-- 查看状态
show variables like 'slow_query_log'

目前是开启状态。如何开启,编辑my.cnf 文件 添加下面的语句,编辑完成后重启Mysql服务

powershell 复制代码
vim /etc/my.cnf  #编辑my.cnf文件

#新增下面3句
slow_query_log=1  # 开启慢sql
slow-query-log-file=/www/mysql-slow.log  #存放日志的地方
long_query_time=3    # 表示超过3秒就记录下来。

#重启Mysql服务:
systemctl restart mysqld

之后如果定时查看 /www/mysql-slow.log 日志,就可以看是否有查过3秒的慢sql

下是一个例子。

查看sql 耗时情况

sql 复制代码
select @@have_profiling;  -- 查看数据库支付支持 
select @@profiling;   -- 查看是否开启
set profiling = 1;    -- 开启profiling
sql 复制代码
select * from a_img where id = 10
select * from a_img where img_url like '%24SN%'
show profiles;

通过 profiles就可以查看到最近 sql的执行时间

sql 复制代码
show profile cpu for query 126;   #查询执行过程耗时:
相关推荐
ajassi200014 分钟前
开源 Linux 服务器与中间件(八)数据库--MariaDB
服务器·数据库·开源
华仔啊1 小时前
这20条SQL优化方案,让你的数据库查询速度提升10倍
数据库·后端·mysql
赵庆明老师1 小时前
C# 结合Redis Cache 访问MySQL数据库
数据库·redis·c#
IvorySQL1 小时前
为IvorySQL增添PACKAGE语法帮助
数据库·postgresql
哈皮Superman1 小时前
【Research】MagicFuzzer: Scalable deadlock detection for large-scale applications
java·开发语言·数据库
ps酷教程1 小时前
mysql的 in 用法
mysql
自由会客室1 小时前
Ubuntu 24.04上安装MySQL 8.0
数据库·mysql
姚远Oracle ACE3 小时前
如何判断Oracle AWR报告中的SQL在多大程度能代表整个系统的负载?
数据库·oracle·1024程序员节
czhc11400756633 小时前
JAVA1026 方法;类:抽象类、抽象类继承;接口、接口继承 Linux:Mysql
java·linux·mysql
chushiyunen3 小时前
neo4j图数据库笔记
数据库·笔记·neo4j