首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何显示在MySQL上执行的最后查询?

要在MySQL上执行最后一次查询,您可以使用以下方法:

  1. 使用SHOW命令查看查询日志:
代码语言:sql
复制
SHOW VARIABLES LIKE 'general_log%';

这将显示查询日志的状态。如果它是关闭的,您可以通过以下命令启用它:

代码语言:sql
复制
SET GLOBAL general_log = 'ON';

然后,您可以使用以下命令查看查询日志:

代码语言:sql
复制
SELECT * FROM mysql.general_log;
  1. 使用LAST_QUERY_ID变量查找最后一次查询:
代码语言:sql
复制
SELECT * FROM performance_schema.threads WHERE THREAD_ID = CONNECTION_ID();

这将显示您的连接ID。然后,您可以使用以下命令查找与该连接ID相关的最后一次查询:

代码语言:sql
复制
SELECT * FROM performance_schema.events_statements_history WHERE THREAD_ID = <your_connection_id> ORDER BY EVENT_ID DESC LIMIT 1;

请注意,这些方法可能需要管理员权限。如果您没有管理员权限,请与您的数据库管理员联系以获取帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

MySQL 查询执行过程

当希望 MySQL 能够以高性能方式运行查询时,最好办法就是弄清楚 MySQL如何优化和执行查询MySQL 执行一个查询过程,如下: ?...【3】当客户端从服务器取数据时,看起来是一个拉数据过程,但实际MySQL 向客户端推送数据过程。客户端不断地接收从服务器推送数据,客户端也没法让服务器停下来。...这通常很快,除非服务器上有非常多权限配置。 四、查询优化器 ---- 当语法树被认为合法时,优化器会将其转化成执行计划。一条查询可以有很多种执行方式,最后都返回相同结果。...【7】优化器有时候无法估算所有可能执行计划,所以它可能错过实际最优执行计划。 MySQL 查询优化器使用了很多优化策略来生成一个最优执行计划。优化侧率可以简单分为两种:静态优化和动态优化。...实际MySQL 优化阶段就为每个表创建了 handler 实例,优化器根据这些实例接口可以获取表相关信息,包括标的所有列名,索引统计信息等等。

2.2K30

MySQL查询执行过程

mySQL查询执行过程 01 查询流程图 当我们希望MySQL能够以更高性能进行查询时,弄清楚MySQL中是如何优化和执行查询就显得很有必要,这里,先搬出来一张图镇楼: ?...这张图写清楚了一个查询MySQL执行过程: 1、客户端发送一条查询给服务器。 2、服务器先检查查询缓存,如果命中了缓存,则会进行权限校验,权限校验通过,直接返回结果。...3、如果没有命中缓存,则进行SQL解析、预处理、再由优化器进行查询优化,计算各项查询方法成本、生成对应执行计划。 4、MySQL根据执行计划,调用存储引擎API来执行查询。...我们查询过程中,MySQL会维护一个查询状态,也就是我们使用show processlist来进行查看时候一些状态值,例如: sleep,说明线程正在等待客户端发送新请求 query,线程正在执行查询或者正在将结果发送给客户端...sending data,这个状态表示服务器可能在多个状态之间传送数据或者在生成结果集想客户端返回 03 查询缓存 解析查询SQL时候,如果这个查询时打开,那么MySQL会优先在缓存中查询

2K10
  • MySQL查询执行基础

    当我们希望MySQL能够以更高性能运行查询时,最好办法就是弄清楚MySQL如何优化和执行查询。...一旦理解了这一点,很多查询优化工作实际就是遵循一些原则让优化器能够按照预想合理方式运行 当我们想向MySQL发送了一个请求时,MySQL到底做了什么: 客户端首先发送一条查询请求给服务器 服务器首先检查查询缓存...查询执行引擎 解析和优化阶段,MySQL将会生成查询对应执行接话,MySQL查询执行引擎则根据这个执行计划来完成整个查询。这里执行计划是一个数据结构,而不是其他很多关系型数据库那样字节码。...相对于查询优化阶段,查询执行阶段并不那么复杂:MySQL只是简单根据执行计划给出指令逐步执行根据执行计划逐步执行过程中,有大量操作需要通过调用存储引擎实现接口来完成。...返回结果给客户端 查询执行最后一个阶段是将结果返回给客户端。及时查询不需要返回结果给客户端,MySQL仍然会返回这个查询信息,如该查询影响到行数。

    1.4K00

    mysql如何执行关联查询与优化

    mysql如何执行关联查询与优化 一、前言 在数据库中执行查询(select)我们工作中是非常常见,工作中离不开CRUD,执行查询(select)时,多表关联也非常常见,我们用也比较多,那么...mysql内部是如何执行关联查询呢?...今天我们就来揭开mysql关联查询神秘面纱。 二、mysql如何执行关联查询   mysql关联执行策略很简单:mysql对任何关联都执行嵌套循环关联操作。...如果mysql最后一个关联表无法找到更多行,它将返回一层关联表,看看能否找到更多匹配记录,以此类推迭代执行。   ...通过这个例子,我们可以看到mysql如何选择合适顺序让查询执行成本更低。重新定义关联顺序是优化器一个重要功能,它尝试在所有关联顺序中选择一个成本最小来生成执行计划树。

    3.3K30

    MySQL架构(一)SQL 查询语句是如何执行

    了解 MySQL 架构之前,我们先看几个 SQL 语句,当我们知道了 SQL 语句执行流程,再学习 MySQL 架构简直手到擒来。...SQL 查询执行流程 SELECT * FROM user WHERE id=1; 当我们客户端执行这个查询语句时,会得到一条 user 表中 id 为 1 数据。...但这整个过程我们并不知道,你可以先想一下,如何去拿到 id=1 数据。 我们往下看,SQL 查询过程具体流程如下图。... MySQL5.7版本,连接后会查询缓存,即查询该语句是否执行过。 具体流程为 MySQL 接收到查询请求后,先去查询缓存,看之前是否已经执行过该条查询语句。...若是该查询语句不在查询缓存中,就会执行后面的阶段。待执行完成后,查询结果会被存入查询缓存中。 我们可以看到,若是查询语句缓存中,就不需要执行后续复杂操作,可以高效率获取查询结果。

    12320

    MySQL执行查询内部原理

    当希望MySQL能够以更高性能运行查询时,最好办法就是弄清楚MySQL如何优化和执行查询。一旦理解这一点,很多查询优化工作实际就是遵循一些原则让优化器能够按照预想合理方式运行。...MySQL执行一个查询过程。如图,我们可以看到当向MySQL发送一个请求时候,MySQL到底做了些什么:图片1.客户端发送一条查询给服务器。...2.服务器先检查查询缓存,如果命中了缓存,则立刻返回存储缓存中结果。否则进入下一阶段。3.服务器端进行SQL解析、预处理,再由优化器生成对应执行计划。4....MySQL根据优化器生成执行计划,调用存储引擎API来执行查询。5.将结果返回给客户端。

    94420

    MySql基础架构(sql查询语句MySql内部具体是怎么执行?)

    提出问题: 对于一个做后台不久我,起初做项目只是实现了功能,所谓增删改查,和基本查询索引建立。直到有一个面试官问我一个问题,一条sql查询语句mysql数据库中具体是怎么执行?...于是开始了深入学习mysql。本篇文章通过 一条sql查询语句mysql数据库中具体是怎么执行? 来具体讲解mysql基础架构。...讲解 mysql> select * from Student where ID=1; 上面一条简单查询语句很简单,但我想好多开发者并不知道MYSQL内部执行过程。...如何设置Mysql不使用查询缓存 将Mysql参数query_cache_type设置成DEMAND,这样默认SQL语句都不使用查询缓存 如何对某一条查询语句指定使用查询缓存 确定使用查询缓存语句,...开始执行时候,要先判断一下你对这个表 Student 有没有执行查询权限,如果没有,就会返回没有权限错误,如下所示 (工程实现,如果命中查询缓存,会在查询缓存返回结果时候,做权限验证。

    5.6K20

    MySQL查询执行基础——查询优化处理

    查询优化器 当语法树被认为是合法时候,将转由优化器去转化成执行计划。一条查询可以有很多种执行方式,最后都返回相同结果。优化器作用就是找到这其中最好执行计划。...MySQL查询静态优化只需要做一次,但是对查询动态优化则在每次执行时都需要重新评估。有时候甚至查询执行过程中也会重新优化。...如果两个列值通过等式关联,那么MySQL能够把其中一个列WHERE条件传递到另一列。 列表IN()比较。 很多数据库系统中,IN()完全等同于多个OR条件子句,因为这两者是完全等价。...MySQL如何执行关联操作 MySQL“关联(join)”比一般意义理解更加广泛。总的来说,MySQL认为任何一个查询都是一次“关联”——并不仅仅是一个查询需要用到两张表匹配才叫关联。...MySQL会尝试最后一个关联表中查找到所有匹配行,如果最后一个关联表无法找到更多行以后,MySQL就会返回一层次关联表,看是否能够找到更多匹配记录,以此类推迭代执行

    1.6K10

    一条查询SQLMySQL中是怎么执行

    平时我们使用数据库,看到通常是一个整体,比如我们执行一条查询SQL,返回一个结果集,却不知道这条语句MySQL内部是如何执行,接下来我们就来简单拆解一下MySQL,看看MySQL是由哪些“零件...这样我们以后遇到MySQL一些异常或者问题时候,就可以快速定位问题并解决问题。 下边通过一张图来看一下SQL执行流程,从中可以清楚看到SQL语句MySQL各个功能模块中执行过程。 ?...连接完成后,如果没有后续操作,这个连接就处于空闲状态,可以使用show processlist命令查询,下图中Command列显示为Sleep这一行,就表示现在系统中有一个空闲连接。 ?...除非是很久才更新一次数据表,比如系统配置表,那这张表查询才适合使用查询缓存。...调用引擎接口取“下一行”,重复相同判断逻辑,直到这个表最后一行。 执行器将上述遍历过程中所有满足条件行组成一个结果集返回给客户端。 到这里,这个查询SQL就执行完成了。

    4.8K20

    SQL语句MySQL中是如何执行

    修改完成后,只有再重新建立连接才会使用到新权限设置。 建立连接过程通常是比较复杂,所以我建议你使用中要尽量减少建立连接动作,也就是尽量使用长连接。...MySQL 拿到一个查询语句,会先查询缓存,先校验这个语句是否执行过,以 key-value 形式存在内存里, Key 是查询预计,Value 是结果集。...如果缓存 key 被命中,就会直接返回给客户端,如果没有命中,就会执行后续操作,完成后也会把结果缓存起来,方便下一次调用。当然真正执行缓存查询时候还是会校验用户权限,是否有该表查询条件。...优化器 经过了分析器分析,MySQL 知道你要干啥了,开始执行之前,还要先经过优化器处理。...优化器作用就是它认为最优执行方案去执行(虽然有时候也不是最优),比如多个索引时候该如何选择索引,多表查询时候如何选择关联顺序等。

    4.4K20

    MySQL实战 | MySQL逻辑架构—一条查询SQL是如何执行

    但是大多数情况下我会建议你不要使用查询缓存,为什么呢?因为查询缓存往往弊大于利。 查询缓存失效非常频繁,只要有对一个表更新,这个表所有的查询缓存都会被清空。...对于更新压力大数据库来说,查询缓存命中率会非常低。除非你业务就是有一张静态表,很长时间才会更新一次。比如,一个系统配置表,那这张表查询才适合使用查询缓存。...开始执行时候,要先判断一下你对这个表 T 有没有执行查询权限,如果没有,就会返回没有权限错误,如下所示 (工程实现,如果命中查询缓存,会在查询缓存返回结果时候,做权限验证。...调用引擎接口取“下一行”,重复相同判断逻辑,直到取到这个表最后一行。...如何选择合适存储引擎呢 这么多存储引擎,真是眼花缭乱,我们该如何选择呢?

    1.2K30

    MySQL逻辑查询语句执行顺序

    在这些SQL语句执行过程中,都会产生一个虚拟表,用来保存SQL语句执行结果(这是重点),我现在就来跟踪这个虚拟表变化,得到最终查询结果过程,来分析整个SQL逻辑查询执行顺序和过程。...VT2表基础添加保留表中被过滤条件过滤掉数据,非保留表中数据被赋予NULL值,最后生成虚拟表VT3。...我们执行测试语句中GROUP BY a.customer_id,就会得到以下内容(默认只显示组内第一条): +-------------+----------+----------+---------...由于我测试SQL语句中并没有使用DISTINCT,所以,查询中,这一步不会生成一个虚拟表。...上述结果会存储VT8中。 执行LIMIT子句 LIMIT子句从上一步得到VT8虚拟表中选出从指定位置开始指定行数据。

    3.8K20

    MySQL实战 -- 一条SQL查询语句是如何执行

    比如,你有个最简单表,表里只有一个 ID 字段,执行下面这个查询语句时: mysql> select * from T where ID=10; 我们看到只是输入一条语句,返回一个结果,却不知道这条语句...但是全部使用长连接后,你可能会发现,有些时候 MySQL 占用内存涨得特别快,这是因为 MySQL 执行过程中临时使用内存是管理连接对象里面的。这些资源会在连接断开时候才释放。...因为查询缓存往往弊大于利。 查询缓存失效非常频繁,只要有对一个表更新,这个表所有的查询缓存都会被清空。因此很可能你费劲地把结果存起来,还没使用呢,就被一个更新全清空了。...对于更新压力大数据库来说,查询缓存命中率会非常低。除非你业务就是有一张静态表,很长时间才会更新一次。比如,一个系统配置表,那这张表查询才适合使用查询缓存。...调用引擎接口取“下一行”,重复相同判断逻辑,直到取到这个表最后一行。

    1.5K30

    一条SQL语句MySQL如何执行

    来源:JavaGuide | 作者:木木匠 本篇文章会分析一个 sql 语句 MySQL执行流程,包括 sql 查询 MySQL 内部会怎么流转,sql 语句更新是怎么完成。...一 MySQL 基础架构分析 1.1 MySQL 基本架构概览 下图是 MySQL 一个简要架构图,从下图你可以很清晰看到用户 SQL 语句 MySQL 内部是如何执行。...MySQL 查询不建议使用缓存,因为查询缓存失效实际业务场景中可能会非常频繁,假如你对一个表更新的话,这个表所有的查询缓存都会被清空。对于不经常更新数据来说,使用缓存还是可以。...4) 优化器 优化器作用就是它认为最优执行方案去执行(有时候可能也不是最优,这篇文章涉及对这部分知识深入讲解),比如多个索引时候该如何选择索引,多表查询时候如何选择关联顺序等。...2.2 更新语句 以上就是一条查询 sql 执行流程,那么接下来我们看看一条更新语句如何执行呢?

    3.5K20

    如何在 Python 中执行 MySQL 结果限制和分页查询

    Python MySQL 限制结果限制结果数量示例 1: 获取您自己 Python 服务器选择 "customers" 表中前 5 条记录:import mysql.connectormydb =...SQL查询mycursor.execute(sql)# 获取查询结果myresult = mycursor.fetchall()# 打印结果for x in myresult: print(x)注意:...LEFT JOIN在上面的示例中,Hannah 和 Michael 被排除结果之外,因为INNER JOIN仅显示存在匹配记录。...如果您希望显示所有用户,即使他们没有喜欢产品,可以使用LEFT JOIN语句:sql = "SELECT \ users.name AS user, \ products.name AS favorite...FROM users \ RIGHT JOIN products ON users.fav = products.id"最后为了方便其他设备和平台小伙伴观看往期文章:公众号搜索Let us Coding

    27820

    单表查询如何执行

    我们第一章时候就曾说过,MySQL Server有一个称为查询优化器模块,一条查询语句进行语法解析之后就会被交给查询优化器来进行优化,优化结果就是生成一个所谓执行计划,这个执行计划表明了应该使用哪些索引进行查询...,表之间连接顺序是啥样最后会按照执行计划中步骤调用存储引擎提供方法来真正执行查询,并将查询结果返回给用户。...回到MySQL中来,我们平时所写那些查询语句本质只是一种声明式语法,只是告诉MySQL我们要获取数据符合哪些规则,至于MySQL背地里是怎么把查询结果搞出来那是MySQL自己事儿。...使用索引来执行查询方式五花八门,又可以细分为许多种类: 针对主键或唯一二级索引等值查询 针对普通二级索引等值查询 针对索引列范围查询 直接扫描整个索引 设计MySQL大叔把MySQL执行查询语句方式称之为访问方法或者访问类型...同一个查询语句可能可以使用多种不同访问方法来执行,虽然最后查询结果都是一样,但是执行时间可能差老鼻子远了,就像是从钟楼到大雁塔,你可以坐火箭去,也可以坐飞机去,当然也可以坐乌龟去。

    1K20

    Mysql实战之一条SQL查询语句是如何执行

    sql,都会说,很简单一个查询语句,执行结果是查询order表中id=10所有数据,但是大家知道这个sqlMysql内部是如何执行吗?...存储引擎包括InnoDB、MyISAM等,目前最常用存储引擎是InnoDB,Mysql5.5.5.版本开始InnoDB就是默认存储引擎了3.连接器第一步,需要先连接到数据库,这时候就是连接器发挥作用...当过多用户访问数据库时候,会导致内存膨胀,最终产生OOM,让mysql宕机解决方案:定期断开长连接如果发现比较大请求时,执行完请求,刷新一下连接4.查询缓存连接建立完成后,就开始执行sql语句了,首先会执行查询缓存执行...sql语句会先走缓存,如果命中缓存,就直接返回结果,如果没有命中缓存,则继续往下执行由于mysql8.0之后查询缓存模块已经被删除,咱们也就不详细讲解这一块了5....判断t2里面d值是否等于20既可以先从表t2里面取出d=20记录id值,根据id值关联表t1,判断t1里面c值是否等于10 上面两种执行方法最终结果是一样,但是执行效率确不相同,优化器作用就是决定使用哪一种执行方法

    1.1K10
    领券