码迷,mamicode.com
首页 > 编程语言 > 详细

排序使用filesort 时查看是否使用了临时表

时间:2021-05-23 23:10:56      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:nbsp   ber   innodb   rman   查看   一段   int   font   class   

/* 打开 optimizer_trace,只对本线程有效 */

0: SET optimizer_trace="enabled=on";

/* @a 保存 Innodb_rows_read 的初始值 */
1SELECT VARIABLE_VALUE into @a from performance_schema.session_status where variable_name = Innodb_rows_read;

/* 执行语句 */
2SELECT * from titem where fname > 0 ORDER BY fname ;

/* 查看 OPTIMIZER_TRACE 输出  此处有json*/ 
3SELECT * FROM INFORMATION_SCHEMA.OPTIMIZER_TRACE;

/* @b 保存 Innodb_rows_read 的当前值 */

4select VARIABLE_VALUE into @b from performance_schema.session_status where variable_name = Innodb_rows_read;

/* 计算 Innodb_rows_read 差值 */
5select @b-@a;
SET optimizer_trace="enabled=off";

 

可以使用上面一段话来查询json

查出json后搜索关键字

number_of_tmp_files

如果有值 

那便是使用了临时文件

排序使用filesort 时查看是否使用了临时表

标签:nbsp   ber   innodb   rman   查看   一段   int   font   class   

原文地址:https://www.cnblogs.com/senjiang/p/14727852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!