返回顶部
首页 > 资讯 > 数据库 >MySQL执行时间的查询
  • 124
分享到

MySQL执行时间的查询

MySQL执行时间查询sql执行时间查询MySQL时间查询 2023-04-09 15:04:48 124人浏览 薄情痞子
摘要

目录慢查询日志测试profile总结上一节我们介绍了Mysql的索引,用于提高查询效率。那么我们应该优化哪些库的哪些sql呢? 答案1:肯定是查询频繁的数据库和查询执行时间长的sql。现在我们一一来解决这个问题。 首先如

上一节我们介绍了Mysql索引,用于提高查询效率。那么我们应该优化哪些库的哪些sql呢?

答案1:肯定是查询频繁的数据库查询执行时间长的sql。现在我们一一来解决这个问题。

  • 首先如何判断一个数据库是否是查询频繁呢?

 我们可以看它的状态信息

SHOW GLOBAL STATUS LIKE 'Com_______';

MySQL执行时间的查询

 我们主要关注:

  • Com_delete: 删除次数 
  • Com_insert: 插入次数
  • Com_select: 查询次数
  • Com_update: 更新次数

 通过上述指令,我们可以查看到当前数据库到底是以查询为主,还是以增删改为主,从而为数据 库优化提供参考依据。 如果是以增删改为主,我们可以考虑不对其进行索引的优化。 如果是以 查询为主,那么就要考虑对数据库的索引进行优化了

 我们又该如何定位针对于那些查询语句进行优化呢? 我们可以借助于慢查询日志。

慢查询日志

慢查询日志记录了所有执行时间超过指定参数(long_query_time,单位:秒,默认10秒)的所有 SQL语句的日志。

mysql的慢查询日志默认没有开启,我们可以查看一下系统变量 slow_query_log = off

MySQL执行时间的查询

可以通过在配置文件最后增加这两个配置信进行打开,并且查询时长不能超过2秒。

# 开启MySQL慢日志查询开关
slow_query_log=1
# 设置慢日志的时间为2秒,SQL语句执行时间超过2秒,就会视为慢查询,记录慢查询日志
long_query_time=2

配置完毕之后,通过以下指令重新启动MySQL服务器进行测试,查看慢日志文件中记录的信息

然后,再次查看开关情况,慢查询日志就已经打开了。

MySQL执行时间的查询

测试

执行如下Sql,一个查询耗时0.00033秒,一个耗时13.35秒

MySQL执行时间的查询

我们之前打开过检查慢查询日志。

最终我们发现,在慢查询日志中,只会记录执行时间超多我们预设时间(2s)的SQL,执行较快的SQL 是不会记录的

MySQL执行时间的查询

然后在实际开发中,我们也会出现这个问题,我们写的SQL逻辑并不复杂却执行了1.9s,这个sql就不会被慢查询日志记录,但是我们也应该对其进行优化。

profile

  • show profiles 能够在做SQL优化时帮助我们了解时间都耗费到哪里去了。
  • 通过have_profiling 参数,能够看到当前MySQL是否支持profile操作:

设置打开。

SET profiling = 1

开关已经打开了,接下来,我们所执行的SQL语句,都会被MySQL记录,并记录执行时间消耗到哪儿去 了。 我们直接执行如下的SQL语句:

select * from tb_user;
select * from tb_user where id = 1;
select * from tb_user where name = '白起';
select count(*) from tb_sku;

MySQL执行时间的查询

查看每一条SQL的耗时情况:

MySQL执行时间的查询

到这里,我们就可以结合慢查询日志和profile来辅助分析sql的具体执行时间。

总结

  • 慢sql查询日志修改配置文件,打开慢查询日志和记录sql执行的最长时间。
  • profile记录每条sql的执行时间,需要进行设置set profiling = 1;

 到此这篇关于MySQL执行时间的查询的文章就介绍到这了,更多相关MySQL时间的查询内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL执行时间的查询

本文链接: https://lsjlt.com/news/201398.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL执行时间的查询
    目录慢查询日志测试profile总结上一节我们介绍了mysql的索引,用于提高查询效率。那么我们应该优化哪些库的哪些sql呢? 答案1:肯定是查询频繁的数据库和查询执行时间长的sql。现在我们一一来解决这个问题。 首先如...
    99+
    2023-04-09
    MySQL执行时间查询 sql执行时间查询 MySQL时间查询
  • MySQL进阶-sql执行时间的查询
    上一节我们介绍了MySQL的索引,MySQL进阶—索引1_兜兜转转m的博客-CSDN博客 用于提高查询效率。那么我们应该优化哪些库的哪些sql呢? 答案1:肯定是查询频繁的数据库和查询执行时间长的sql。现在我们一一来解决这个问题。 首先如...
    99+
    2023-10-26
    mysql 数据库 sql
  • mysql中慢日志分析某查询执行的时间点
    本篇内容主要讲解“mysql中慢日志分析某查询执行的时间点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql中慢日志分析某查询执行的时间点”吧!慢日志分析...
    99+
    2024-04-02
  • MySQL:查询时进行时间比较
    MySQL:查询时进行时间比较 前言一、查询距离当前时间多久以前二、查询特定时间范围 前言 在 MySQL 中查数据的时候,往往需要对记录的创建时间进行筛选,比如只需要查询今年1-5月份的,或者查询距离当前时间多久以前的。 本...
    99+
    2023-08-19
    mysql 数据库 时间筛选
  • 查看sql执行时间
    SET STATISTICS PROFILE ON SET STATISTICS IO ON SET STATISTICS TIME ON select * from...
    99+
    2024-04-02
  • MySQL 管理长时间运行查询
    最常用的查询 select concat ('kill ',id,';') from information_schema.processlist where...
    99+
    2024-04-02
  • mysql怎么查看语句执行时间
    在MySQL中,你可以使用EXPLAIN关键字来查看语句执行计划,包括语句的执行时间。 具体步骤如下: 打开MySQL命令行或者任...
    99+
    2024-04-09
    mysql
  • oracle查询存储过程执行记录时间怎么查
    在 oracle 中,可以通过以下方法查询存储过程执行记录时间:使用 dbms_profiler 包获取执行统计信息。使用 v$profiler 视图获取正在执行的 sql 语句和 pl...
    99+
    2024-04-19
    oracle
  • mysql查询现在的时间
    在 mysql 中查询当前时间的六种方法:now() 函数,返回当前系统时间和日期。current_timestamp 函数,返回当前时间戳,包括微秒部分。get_date() 函数,返...
    99+
    2024-08-01
    mysql
  • mysql查询正在执行的进程
    查看mysql进程有两种方法1、进入mysql/bin目录下输入mysqladmin processlist;2、启动mysql,输入show processlist;如果有SUPER权限,则可以看到全部的...
    99+
    2024-04-02
  • mysql如何查询时间区间
    mysql如何查询时间区间?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。mysql如何查询时间区间1.查询昨天的数据 s...
    99+
    2024-04-02
  • mysql查询时间段的案例
    这篇文章给大家分享的是有关mysql查询时间段的案例的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。mysql查询时间段的方法:1、传统方式,即指定开始时间和结束时间;2、UNIX...
    99+
    2024-04-02
  • plsql怎么查看sql的执行时间
    在PL/SQL中,可以使用DBMS_UTILITY包中的TIMER来测量SQL语句的执行时间。以下是一个示例: DECLARE ...
    99+
    2024-04-09
    plsql sql
  • mysql 执行查询SQL 一直执行不出结果
    今天执行一个mysql 语句, 一直在 执行,执行了5分钟了,还是没有出来结果。 # 每个组织下包括 同级或者下级的 注册店铺数 # 查询 历史每一天的每个组织下的当天存在的门店数 select dt.`time...
    99+
    2021-12-24
    mysql 执行查询SQL 一直执行不出结果
  • Mysql数据库时间查询
    1、查询当前时间  年月日时分秒 select now();   2、查询当前时间 前三小时 的时间点 select subdate(now(),interval 3 hour);   3、查询当前时间  前三天 的时间点 select...
    99+
    2023-09-10
    java sql 开发语言
  • Mysql中使用时间查询
    Mysql中使用时间查询 一、使用等号查询二、查询某月、某日、某年三、查询时间范围 一、使用等号查询 可以像普通查询使用等号进行查询,但必须查询时间必须和字段对应时间完全相等,比如我要查下面这个值 sql如下: SELEC&#...
    99+
    2023-08-22
    mysql 数据库
  • Sql server语句执行时间查看
    declare @begin_date datetimedeclare @end_date datetimeselect @begin_date = getdate()SELECT COUNT(*) AS CNT FROM Stu...
    99+
    2019-01-11
    Sql server语句执行时间查看 数据库入门 数据库基础教程 数据库 mysql
  • plsql如何查看sql执行时间
    在PL/SQL中,可以使用DBMS_UTILITY包中的TIMER和FORMAT_CALL_STACK函数来测量SQL语句的执行时间...
    99+
    2023-09-28
    plsql sql
  • Mysql查询语句执行过程 - G
    Mysql查询语句执行过程   Mysql分为server层和存储引擎两部分,或许可以再加一层连接层   连接层(器) Mysql使用的是典型的C/S架构。连接器通过典型的TCP握手完成连接。 需要注的是, 如果用户名和密码都正确...
    99+
    2021-12-15
    Mysql查询语句执行过程 - G
  • 如何在MySQL中执行子查询
    在MySQL中执行子查询可以通过将子查询语句包含在主查询语句中的方式来实现。以下是一个简单的例子: SELECT colum...
    99+
    2024-03-06
    MySQL
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作