暂无图片
mysql能查看历史执行计划吗?会话级别的执行计划存放在那个组件中?
我来答
分享
暂无图片 匿名用户
mysql能查看历史执行计划吗?会话级别的执行计划存放在那个组件中?

mysql能查看历史执行计划吗?会话级别的执行计划存放在那个组件中?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
手机用户0306


是的,MySQL可以查看历史执行计划。

MySQL的执行计划是保存在performance_schema数据库中的events_statements_history和events_statements_history_long表中的。

你可以使用下面的SQL语句来查看历史执行计划:

SELECT * FROM performance_schema.events_statements_history WHERE DIGEST IS NOT NULL;

SELECT * FROM performance_schema.events_statements_history_long WHERE DIGEST IS NOT NULL;

复制

这些表会记录所有执行过的语句的执行计划和性能统计信息。其中events_statements_history表只会保留最近的语句,而events_statements_history_long会保留所有历史语句。

digestive字段是语句的摘要,可以用来区分不同的语句。所以你可以根据这个字段找到某个特定语句的历史执行计划。

此外,performance_schema还提供了setup_consumers表,可以用来配置是否打开这些性能监控表的消费。可以通过配置这个表来控制是否记录execuution计划和语句性能。

所以MySQL通过performance_schema提供了完整的SQL执行性能跟踪和历史统计功能。

暂无图片 评论
暂无图片 有用 1
打赏 0
豆宇斯
2023-12-07
AI 会瞎编
豆宇斯
MySQL不记录历史执行计划,目前也没找到有什么工具支持
暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
mysql如何从系统层面,查看主备库的复制线程是否启动了?
回答 1
您可以通过以下命令查看主备库的复制线程是否启动:查看主库的dumpthread是否启动:SHOWPROCESSLIST;。查看备库的I/Othread是否启动:SHOWPROCESSLIST;。查看备
如何通过系统表,把执行超过10分钟但是还没有执行完的语句给查到?5.7社区版下
回答 3
selectfrom informationschema.innodbtrx查看长时间执行事务,可以根据事务启动时间来判断执行时长
MySQL 报错1093 - 无法在 FROM 子句中指定要更新的目标表,怎么解决?
回答 1
其中包含损坏的条目是什么意思?是磁盘坏块,或者叫坏页?
oracle集群建dblink连mysql
回答 2
参考:https://www.modb.pro/db/567085
什么是数据库索引?为什么使用索引
回答 2
已采纳
数据库索引是一种数据结构,用于加快数据库查询操作的速度。它是通过在表中的一个或多个列上创建索引来实现的。索引可以类比于书籍的目录,它提供了一种快速查找数据的方式。加快数据检索速度:索引可以将数据按照特
abcddce2dfd2dfadf2f 这个字符串在mysql数据库中有没有可以取出来第二个2位置的函数?
回答 1
selectsubstr(substr(‘ab2cde2fgh2p’,instr(‘ab2cde2fgh2p’,‘2’)1),instr(substr(‘ab2cde2fgh2p’,instr(‘ab
MySQL用于控制和显示收集诊断信息的存储过程有哪些?
回答 2
已采纳
如下存储过程用于控制和显示收集诊断信息:pssetupdisablebackgroundthreads():不启用所有后台线程的诊断信息收集。pssetupdisableconsumer():使用li
MySQL 列标题可能会在select语句中被截断吗?
回答 3
你所指的列标题截断应该是指的显示工具的截断,实际上是不会有列标题截断这种情况的,当列的别名超长,sql查询会直接报错。如果是表达式作为一列,不使用别名,那这样的情况下实际上也无法定位列名
mysql 从库上手动跑了一个修改语句导致gtid多一个,怎么让主上的execute_gtid_set和从库上保持一致?
回答 1
从库再改回来,主库再次执行一次,看看能不能覆盖。这和你数据库版本,以及binlog模式还有有没有主键等都有关系。最后只要数据一致性就行。多出一个gtid是没有办法了。
MySQL如何定时生成指定范围的随机数值?
回答 7
写一个event往一个固定表中插随机种子值,然后你生成随机数的时候去固定表中取种子值