优化SQL之最快等价SQL
SQL优化工具Tosska SQL Tuning Expert for Oracle,帮助SQL开发人员解决SQL性能问题。
本工具主要创始人Richard To, 资深ITPUB元老,从1996年开始设计SQL优化工具,拥有超过20年的SQL优化经验。
工具已经从最初的1.0, 1.1,1.2,逐步演化到了3.0. 最新版本主要包含3个功能:
1. 为单条SQL产生等价SQL, 并找出最快的等价SQL;
2. 为单条SQL建议最佳索引;
3. SQL性能报表;
官网下载 https://www.tosska.cn/tosska-sql-tuning-expert-tse-oracle-free-download-zh/
产品介绍 https://www.tosska.cn/tosska-sql-tuning-expert-tse-oracle-zh/
下面开始介绍如何用工具优化SQL.
1. 创建数据库连接, 也可以稍后创建。
连接名可以随意填写,也可以用默认值,我个人喜欢用它来标识连接的是哪个数据库。
Oracle客户端不是必须的。不装Oracle客户端的话,连接类型选“基本”,然后用数据库主机名或者IP, 端口直连;装了Oracle客户端的话, 并且在Oracle客户端配置了TNS,可以用TNS连接数据库。
填好连接信息,点击 “连接” 按钮。
2. 输入有性能问题的SQL后, 点击“优化SQL”
3. “测试运行所有SQL选项”窗口,提供了很多性能基准测试的选项。
点“确定”按钮开始SQL优化。
4. 工具产生了23条等价SQL,并且开始性能基准测试。虽然测试还没有完成,我们已经可以看到 SQL 8 的性能提升了59%。
原始SQL的执行时间是 34.84 秒。
SQL 8 的执行时间是 14.27 秒。
5. 优化结束后,最快的等价SQL是 SQL 7, 工具将原SQL 从 34.84秒,优化到不到1秒。
原始SQL的执行时间是 34.84 秒。
SQL 7 的执行时间是 0.05 秒。
6. 点击 SQL 7 ,用等价的SQL 7 替换应用程序源代码中的原SQL。重新编译应用程序,测试后发布。
SQL 执行时间从34.84秒,优化到不到1秒。 调优任务顺利完成,完美!
如何为1条SQL,创建最佳索引?请看 优化SQL之最佳索引
Tosska SQL Tuning Expert Pro for Oracle,除了本文介绍的SQL调优基本功能之外,还能在不修改SQL源码的情况下,调整和稳定SQL执行计划;为批量SQL(例如1000条SQL)建议最优索引。
详情请阅读以下文章:
SQL优化神器-Tosska SQL Tuning Expert Pro for Oracle
SQL优化系列(三)- 不修改源码,为批量SQL建议最佳索引