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 文件,输出给你就行了。)。
注意:不设置优化器最大容量的话,可能会导致优化器返回的结果不全。
往期推荐:
刷题2个月,终于进了梦寐以求的大厂,数据结构和算法太TM重要了!
扫描二维码关注公众号,回复:
11464551 查看本文章
开源项目AppGet 作者:大厂“套取”了我的方案后把我扔到了一边
2020-06-19