调优工具常用命令

news2025/2/27 20:38:00

语法格式

mysqldumpslow [ OPTS... ] [ LOGS... ] //命令行格式

常用到的格式组合

-s 表示按照何种方式排序
    c 访问次数
    l 锁定时间
    r 返回记录
    t 查询时间
    al 平均锁定时间
    ar 平均返回记录数
    at  平均查询时间
-t 返回前面多少条数据
-g 后边搭配一个正则匹配模式,大小写不敏感

1、拿到慢日志路径

show variables like '%slow_query_log%';

日志路径为:/opt/mysql-5.7.28/data/linux-141-slow.log

查看日志

[root@linux-141 mysql-5.7.28]# cat /opt/mysql-5.7.28/data/linux-141-slow.log
/opt/mysql-5.7.28/bin/mysqld, Version: 5.7.28-log (MySQL Community Server (GPL)). started with:
Tcp port: 3306  Unix socket: /tmp/mysql.sock
Time                 Id Command    Argument
# Time: 2021-09-15T01:40:31.342430Z
# User@Host: root[root] @  [192.168.36.1]  Id:     2
# Query_time: 2.000863  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use itcast;
SET timestamp=1631670031;
-- 睡眠2s再执行
select sleep(2);
[root@linux-141 mysql-5.7.28]#

2、得到访问次数最多的 10 条 SQL

[root@linux-141 mysql-5.7.28]# ./bin/mysqldumpslow -s r -t  10 /opt/mysql-5.7.28/data/linux-141-slow.log
-bash: ./bin/mysqldumpslow: /usr/bin/perl: 坏的解释器: 没有那个文件或目录
[root@linux-141 mysql-5.7.28]# yum -y install perl perl-devel
[root@linux-141 mysql-5.7.28]# ./bin/mysqldumpslow -s r -t  10 /opt/mysql-5.7.28/data/linux-141-slow.log

3、按照时间排序的前 10 条里面含有左连接的 SQL

[root@linux-141 mysql-5.7.28]# ./bin/mysqldumpslow -s t -t 10 -g "left join"  /opt/mysql-5.7.28/data/linux-141-slow.log

Reading mysql slow query log from /opt/mysql-5.7.28/data/linux-141-slow.log
Died at ./bin/mysqldumpslow line 167, <> chunk 28.
[root@linux-141 mysql-5.7.28]#

3.1.3 慢日志文件分析

1、查看慢查询日志

[root@linux-141 mysql-5.7.28]# cat /opt/mysql-5.7.28/data/linux-141-slow.log
/opt/mysql-5.7.28/bin/mysqld, Version: 5.7.28-log (MySQL Community Server (GPL)). started with:
Tcp port: 3306  Unix socket: /tmp/mysql.sock
Time                 Id Command    Argument
# Time: 2021-09-15T01:40:31.342430Z
# User@Host: root[root] @  [192.168.36.1]  Id:     2
# Query_time: 2.000863  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use itcast;
SET timestamp=1631670031;
-- 睡眠2s再执行
select sleep(2);
# Time: 2021-09-15T01:50:32.130305Z
# User@Host: root[root] @  [192.168.36.1]  Id:     2
# Query_time: 3.001904  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
SET timestamp=1631670632;
select sleep(3);
# Time: 2021-09-15T01:50:55.064372Z
# User@Host: root[root] @  [192.168.36.1]  Id:     2
# Query_time: 4.008082  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
SET timestamp=1631670655;
select sleep(4);
# Time: 2021-09-15T01:51:01.343463Z
# User@Host: root[root] @  [192.168.36.1]  Id:     2
# Query_time: 5.007035  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
SET timestamp=1631670661;
select sleep(5);
# Time: 2021-09-15T01:51:07.737834Z                                     	###### 执行SQL时间
# User@Host: root[root] @  [192.168.36.1]  Id:     2						###### 执行SQL的主机信息
# Query_time: 6.009129  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0	###### SQL的执行信息
SET timestamp=1631670667;													###### SQL执行时间
select sleep(6);															###### SQL内容
[root@linux-141 mysql-5.7.28]#

属性解释

# Time: 2021-09-15T01:51:07.737834Z                                     	###### 执行SQL时间
# User@Host: root[root] @  [192.168.36.1]  Id:     2						###### 执行SQL的主机信息
# Query_time: 6.009129  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0	###### SQL的执行信息
SET timestamp=1631670667;													###### SQL执行时间
select sleep(6);															###### SQL内容

3.2 调优工具 show profile

tips:

show profile,它也是调优工具

也是 MySQL 服务自带的分析调优工具

不过这款更高级

比较接近底层硬件参数的调优。

简介:

show profile 是 MySQL 服务自带更高级的分析调优工具

比较接近底层硬件参数的调优

1、查看 show profile 设置

-- 默认关闭,保存近15次的运行结果
show variables like 'profiling%';

 通过上面我们发现,show profile 工具默认是关闭状态,15 表示保存了近 15 次的运行结果。

2、开启调优工具

执行下面的命令开启

SET profiling = ON;

再次查看状态

show variables like 'profiling%';

3、查看最近 15 次的运行结果

-- 查看最近15次的运行结果
show profiles;

-- 可以显示警告和报错的信息
show warnings;

-- 慢查询语句
SELECT * FROM product_list WHERE store_name = '联想北达兴科专卖店';

显示最近 15 次的运行结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/9625.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机械专业学子的芯片封装仿真“逆袭之路”

作者&#xff1a;萧显军 导读&#xff1a;近期&#xff0c;ANSYS公司给清华大学集成电路学院捐赠了一批业界领先的计算机辅助工程(CAE)软件及自动化(EDA)软件&#xff0c;为清华大学的芯片设计仿真的教学科研工作提供更强大的软件服务与技术支撑。 捐的仿真软件包括ANSYS涉及…

小白学Java

ip地址&#xff1a;用于唯一识别标记网络中的每一台计算机 查看方法&#xff1a;ipconfig ip地址的表示形式&#xff1a;点分十进制 xx.xx.xx.xx 每个十进制数的范围&#xff1a;0-255 ip地址的组成 网络地址主机地址 ipv4地址分类&#xff1a; &#xff08;特殊&#xff1a;…

一、react简介

目标 理解react这个框架在前端开发中的地位理解react诞生的原因和意义&#xff08;react是一个用于快速构建前端视图的javaScript库&#xff09;理解什么是虚拟dom、原生js模拟出虚拟dom的表示&#xff0c;模拟出创建虚拟dom的方法&#xff0c;模拟出虚拟dom转换成真实dom的方…

什么是甘特图?什么是项目管理?

数字化与信息化早已成为现今人们工作和生活中不可缺少的一部分。尤其是随着科学技术的进步&#xff0c;人们对数字化的期待也越来也高。作为项目管理中常备的工具&#xff0c;甘特图已经成为不少业内人士中常备的“神器”了。然而依旧有人搞不清甘特图与项目管理区别究竟在哪里…

Revit中创建基于线的砌体墙及【快速砌体排砖】

​  墙可以更改内部结构和材质&#xff0c;但是很难画出砌块样式形成的墙体&#xff0c;我们可以用其他方式画出砌体排砖墙么?这里我们用基于线的常规模型做砌体排砖墙。在开始我们需要做两个族&#xff0c;作为砌体排砖墙的基本单位&#xff0c;也就是一个单独的砌体块。 一…

多亏了这份大佬整理的Java进阶笔记,让我斩获7个offer

移动互联网时代&#xff0c;IT 系统变得愈加复杂&#xff0c;对我们程序员的要求也是越来越高&#xff0c;技术不断更新&#xff0c;我们还不能停止学习&#xff0c;停下来了就会被打上一个‘不合格的程序员’的标签&#xff0c;如何成为一位「不那么差」的程序员&#xff1f; …

java.io.IOException: FIS_AUTH_ERROR in Android Firebase

项目里更换完google-services.json文件后&#xff0c;获取 firebase token 时&#xff0c;显示报错&#xff1a; E/FirebaseInstanceId: Topic sync or token retrieval failed on hard failure exceptions: FIS_AUTH_ERROR. Wont retry the operation.D/AndroidRuntime: Sh…

测试行业3年经验,从大厂裸辞后,面试阿里、字节全都一面挂,被面试官说我的水平还不如应届生

测试员可以先在大厂镀金&#xff0c;以后去中小厂毫无压力&#xff0c;基本不会被卡&#xff0c;事实果真如此吗&#xff1f;但是在我身上却是给了我很大一巴掌... 所谓大厂镀金只是不卡简历而已&#xff0c;如果面试答得稀烂&#xff0c;人家根本不会要你。况且要不是大厂出来…

精品基于ssm的足球联赛管理系统的设计与实现vue

《基于ssm的足球联赛管理系统的设计与实现》该项目含有源码、论文等资料、配套开发软件、软件安装教程、项目发布教程等 使用技术&#xff1a; 开发语言&#xff1a;Java 框架&#xff1a;ssm 前端技术&#xff1a;JavaScript、VUE.js&#xff08;2.X&#xff09;、css3 J…

记录一次服务器CPU负载高,利用率正常的处理方法

背景&#xff1a; 在一次查看服务器监控的时候偶然发现其中一台服务器的CPU负载很高&#xff0c;但是CPU利用率基本没有&#xff0c;通过top命令完全看不出来问题所在&#xff0c;经过一些思路的排查发现了原因并处理&#xff0c;现记录下来。 现象&#xff1a; top命令查看…

前端js手写面试题汇总(一)

实现prototype继承 所谓的原型链继承就是让新实例的原型等于父类的实例&#xff1a; //父方法 function SupperFunction(flag1){this.flag1 flag1; }//子方法 function SubFunction(flag2){this.flag2 flag2; }//父实例 var superInstance new SupperFunction(true);//子继…

刷了一个月leetcode算法,成功收下阿里巴巴、网易等大厂的offer

前言 有人调侃我们说&#xff1a; 程序员不如送外卖。送外卖是搬运食物&#xff0c;自己是搬运代码&#xff0c;都不产出新的东西……透支体力&#xff0c;又消耗健康&#xff0c;可替代性极强&#xff0c;30岁之后就要面临被优化的危险……想跳槽&#xff0c;但是更高的平台…

Linux常见的链接命令有几种?分别是什么?

链接命令是创建链接文件&#xff0c;链接文件分为软链接和硬链接&#xff0c;软链接的作用是方便文件的快速访问&#xff0c;而硬链接的作用是可以给重要文件创建硬链接能够防止文件数据被误删。 学习目标&#xff1a;能够说出软链接的创建方式和硬链接的创建方式。 教程推荐…

青岛地铁交通咨询系统

大二课程《数据结构》课程设计项目&#xff0c;仅供参考 C&QT 项目地址 1.(重要)后台数据处理&#xff1a;使用图结构存储数据&#xff0c;利用最短路径选择算法进行路径选择&#xff1b; 2.检测输入框是否为空及输入合法性&#xff0c;使用模糊搜索实现站点的选择引导 &…

5.1获取物理内存容量

5.1获取物理内存容量 5.1.1学习Linux获取内存的方法 在 Linux 2.6 内核中, 是用 detect_memory 函数来获取内存容量的 其函数在本质上是通过调用 BIOS 中断 0x15 实现的&#xff0c; 分别是BIOS 中断 0x15 的3个子功能, 子功能号要存放到寄存器EAx或Ax中, 如下&#xff1a; 1…

【数据结构与算法】BFS 和 DFS

&#x1f525; 本文由 程序喵正在路上 原创&#xff0c;CSDN首发&#xff01; &#x1f496; 系列专栏&#xff1a;数据结构与算法 &#x1f320; 首发时间&#xff1a;2022年11月16日 &#x1f98b; 欢迎关注&#x1f5b1;点赞&#x1f44d;收藏&#x1f31f;留言&#x1f43e…

关于混合SDN网络的统一信息模型方面研究事件通知的多样性问题

关于混合SDN网络的统一信息模型方面研究事件通知的多样性问题面向混合SDN中异构设备的混合域发现协议Hybrid Domain Discovery Protocol (HDDP)HDDP的主要特点混合域发现协议(HDDP)协议介绍过程总结申明&#xff1a; 未经许可&#xff0c;禁止以任何形式转载&#xff0c;若要引…

阿里云研发工程师刘睿:阿里云消息生态及最佳实践

2022 年 9 月 24 日&#xff0c;阿里云用户组&#xff08;AUG&#xff09;第 12 期活动在厦门举办。活动现场&#xff0c;阿里云消息中间件研发工程师刘睿&#xff0c;向参会企业代表分享了阿里云消息生态及最佳实践。本文根据演讲内容整理而成。 众所周知&#xff0c;消息中间…

智能生活 App 垂直品类- IPC SDK 架构及快速集成配置(安卓版)

除了通用设备功能的应用开发&#xff0c;针对部分常见的全屋智能场景设备&#xff0c;智能生活 App SDK 提供了单独的垂直品类 SDK。包括智能摄像机 SDK、智能门锁 SDK、扫地机机器人 SDK、智能照明控制 SDK 等。 基于 智能生活 App SDK&#xff0c;垂直品类 SDK 面向这些特定…