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

SQL优化系列(三)- 不修改源码,为批量SQL建议最佳索引

SQL优化系列(四)- 不修改源码,调整SQL执行计划

优化SQL之最快等价SQL的更多相关文章

  1. mysql系列十一、mysql优化笔记:表设计、sql优化、配置优化

    可以从这些方面进行优化: 数据库(表)设计合理 SQL语句优化 数据库配置优化 系统层.硬件层优化 数据库设计 关系数据库三范式 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非 ...

  2. 理解性能的奥秘——应用程序中慢,SSMS中快(6)——SQL Server如何编译动态SQL

    本文属于<理解性能的奥秘--应用程序中慢,SSMS中快>系列 接上文:理解性能的奥秘--应用程序中慢,SSMS中快(5)--案例:如何应对参数嗅探 我们抛开参数嗅探的话题,回到了本系列的最 ...

  3. 转://从一条巨慢SQL看基于Oracle的SQL优化

    http://mp.weixin.qq.com/s/DkIPwbDKIjH2FMN13GkT4w 本次分享的内容是基于Oracle的SQL优化,以一条巨慢的SQL为例,从快速解读SQL执行计划.如何从 ...

  4. 从一条巨慢SQL看基于Oracle的SQL优化(重磅彩蛋+PPT)

    本文根据DBAplus社群第110期线上分享整理而成,文末还有好书送哦~ 讲师介绍 丁俊 新炬网络首席性能优化专家 SQL审核产品经理 DBAplus社群联合发起人.<剑破冰山-Oracle开发 ...

  5. 数据库sql优化总结之5--数据库SQL优化大总结

    数据库SQL优化大总结 小编最近几天一直未出新技术点,是因为小编在忙着总结整理数据库的一些优化方案,特此奉上,优化总结较多,建议分段去消化,一口吃不成pang(胖)纸 一.百万级数据库优化方案 1.对 ...

  6. MySQL数据库性能优化:表、索引、SQL等

    一.MySQL 数据库性能优化之SQL优化 注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需要有一些索引知识为基础 优化目标 减少 IO 次数IO永远是数据库最容易瓶颈的地 ...

  7. SQL SERVER调优常用方法 sql优化

    说起SQL SERVER的调优,我想大伙也很想知道这方面的知识.本人也正在探索的路上,大家有什么好的意见,欢迎一起探讨.研究.博取众人之长,才能扬长避短.本文中的内容主要是摘自<程序员的SQL金 ...

  8. StringBuilder 拼接sql语句比较快

    StringBuilder 拼接sql语句比较快StringBuilder strBuilder = new StringBuilder();strSql += "insert into t ...

  9. mysql优化(三)–explain分析sql语句执行效率

    mysql优化(三)–explain分析sql语句执行效率 mushu 发布于 11个月前 (06-04) 分类:Mysql 阅读(651) 评论(0) Explain命令在解决数据库性能上是第一推荐 ...

随机推荐

  1. iOS之CAScrollLayer属性简介和使用

    1.CAScrollLayer的简介 CAScrollLayer用于显示一个滑动图层的一部分,可以确定滑动方向和可视区域面积,限制不滑出区域外!相关属性如下:其中 /* Scroll the cont ...

  2. 微信小程序chooseImage(从本地相册选择图片或使用相机拍照)

    一.使用API wx.chooseImage(OBJECT) var util = require('../../utils/util.js') Page({ data:{ src:"../ ...

  3. SPSS输出结果统计表与统计图的专业性编辑及三线表定制格式

    SPSS输出结果统计表与统计图的专业性编辑及三线表定制格式 世界前三统计软件,SPSS最容易学习,但SPSS默认输出的统计表与统计图美观度与专业度不够好,离发表水平尚有距离,本期咱们就谈谈SPSS图表 ...

  4. Apollo Lake设计缺陷,避免使用它们

    很多经验告诉我们,在不大幅加电压超频的情况下,CPU很少会用坏.多数情况下电脑退役都是主板或其他部件故障,或是性能严重落后而不得不淘汰.但是如果CPU在制造阶段就存有缺陷的话,情况就不是这样了. 英特 ...

  5. Java对象的存活判断

    Java对象的回收是有依据的,普通的方式是计算法,比如被引用,对象计数器➕1,不被引用,➖1,回收的时候,发现是0则清除,但是不能解决两个对象互相被引用的情况,Java采用可达性分析,通过某个对象作为 ...

  6. Python2 Python3 urllib方法对应

    Python2 name Python3 nameurllib.urlopen() urllib.request.urlopen()urllib2.urlopen() urllib.request.u ...

  7. quartz 定时任务配置文件信息

    quartz 定时任务配置文件有五大要素,配置好这五大要素,quartz 就能够正常的工作. 五大要素分别是: 1.工作的 bean:具体是哪个 Java 类来作为定时任务的文件入口,并配置该 bea ...

  8. 深入了解组件- -- 动态组件 & 异步组件

    gitHub地址:https://github.com/huangpna/vue_learn/example里面的lesson11 一 在动态组件上使用keep-alive 在这之前我们已经有学习过用 ...

  9. git简单使用命令

    每次都会忘记git使用命令 在本上做了笔记,网上也备份一份吧 这个是删除步骤: 拉取远程的Repo到本地(如果已经在本地,可以略过) $ git clone xxxxxx 在本地仓库删除文件  $ g ...

  10. php filemtime filectime fileatime的区别

    1.fileatime()int fileatime(string filename):fileatime()函数返回filename最后访问的时间,这里的最后访问是指每当一个文件的数据块被读取,采用 ...