1. 查看优化器状态
show variables like 'optimizer_trace';
2. 会话级别临时开启
set session optimizer_trace="enabled=on",end_markers_in_json=on;
3. 设置优化器追踪的内存大小
set OPTIMIZER_TRACE_MAX_MEM_SIZE=1000000;
4. 执行自己的SQL
select host,user,plugin from user;
5. information_schema.optimizer_trace表
SELECT trace FROM information_schema.OPTIMIZER_TRACE;
6. 导入到一个命名为xx.trace的文件,然后用JSON阅读器来查看
SELECT TRACE INTO DUMPFILE "/tmp/test.trace" FROM INFORMATION_SCHEMA.OPTIMIZER_TRACE;
注意:(如果没有控制台权限,或直接交由运维,让他把该 trace 文件,输出给你就行了。)。
*注意:不设置优化器最大容量的话,可能会导致优化器返回的结果不全。想学习了解更多weixin chazhao "SpringForAll社区" guanzhu jike *
本文由博客一文多发平台 OpenWrite 发布!
本文详细介绍了MySQL中优化器追踪的使用方法,包括查看优化器状态、临时开启追踪、设置追踪内存大小、执行SQL并获取追踪信息,以及将追踪结果导出为文件进行深入分析的步骤。
10万+

被折叠的 条评论
为什么被折叠?



