MySQL万能优化套路你值得拥有

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 发布!

你可能感兴趣的