优化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. 创建数据库连接, 也可以稍后创建 (如果已经创建了数据库连接,请忽略此步骤,直接跳到第2步)。
关于如何创建连接,请看 优化SQL之最快等价SQL篇 第1步;
2. 在“索引”页, 输入有性能问题的SQL后, 点击 “建议索引”
注意: 如果我们在“SQL”页已经输入了有性能问题的SQL, 转到“索引”页,就不需要再输入原SQL了。

3. “测试运行所有SQL选项”窗口,提供了很多性能基准测试的选项。
点“确定”按钮开始索引建议。

4. 工具产生了8个索引集合,并且开始性能基准测试。
最快的索引集合是 Index Set 5 (包含了2个索引), 工具将原SQL 从 34.99秒,优化到不到1秒。
原始SQL的执行时间是 34.99 秒。
创建 Index Set 5 后的执行时间是 0.07 秒。

6. 点击 Index Set 5 ,复制创建索引的脚本,在SQL*Plus 或者PL/SQL Developer 中执行。索引创建成功后,确认应用软件性能得到了提升。

原 SQL 的执行时间34.99秒,创建索引后执行时间不到1秒。 调优任务顺利完成!
如何找到1条SQL的最快等价SQL? 请看 优化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优化工具Tosska SQL Tuning Expert for Oracle,帮助SQL开发人员解决SQL性能问题. 本工具主要创始人Richard To, 资深ITPUB元老,从1996年开 ...
- 《MySQL慢查询优化》之SQL语句及索引优化
1.慢查询优化方式 服务器硬件升级优化 Mysql服务器软件优化 数据库表结构优化 SQL语句及索引优化 本文重点关注于SQL语句及索引优化,关于其他优化方式以及索引原理等,请关注本人<MySQ ...
- SQL优化笔记一:索引和explain
目录 为什么需要优化SQL SQL优化的重点 索引 索引的结构 索引的优缺点总结: 索引的分类 索引操作 B树 实战 问题 数据库方面,我会使用MySQL来讲解 为什么需要优化SQL 性能低,执行时间 ...
- SQL优化(三)—— 索引、explain分析
SQL优化(三)—— 索引.explain分析 一.什么是索引 索引是一种排好序的快速查找的数据结构,它帮助数据库高效的查询数据 在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据 ...
- mysql数据库性能优化(包括SQL,表结构,索引,缓存)
优化目标减少 IO 次数IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当 ...
- 利用 Oracle EM 企业管理器 进行oracle SQL的优化(自动生成索引)
利用 Oracle EM 企业管理器 进行oracle SQL的优化(自动生成索引) ##应用情景 项目中有大量的SQL,尤其是涉及到统计报表时,表关联比较多,当初开发建表时也没搞好索引关联的,上线后 ...
- paip.索引优化---sql distict—order by 法
paip.索引优化---sql distict—order by 法 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog ...
- 在优化SQL语句中使用虚拟索引
定义:虚拟索引(virtual index) 是指没有创建对应的物理段的索引. 虚拟索引的目的:是在不损耗主机CPU,IO,磁盘空间去实际创建索引的情况下,来判断一个索引是否能够对SQL优化起到作用. ...
- MySQL查询不使用索引汇总 + 如何优化sql语句
不使用索引原文 : http://itlab.idcquan.com/linux/MYSQL/918330.html MySQL查询不使用索引汇总 众所周知,增加索引是提高查询速度的有效途径,但是很多 ...
随机推荐
- 微信回调校验失败兼容php7
今天在移动微信支付的代码的时候,发现校验失败,之前好好的,一点点打印了,顺着微信校验程序打印看结果,发现 $xml = $GLOBALS['HTTP_RAW_POST_DATA'];; 接收到的数据 ...
- csp-s模拟测试51(b)attack,tree题解
题面:https://www.cnblogs.com/Juve/articles/11598286.html attack: 支配树裸题? 看一下支配树是什么: 问题:我们有一个有向图(可以有环),定 ...
- HZOI20190819模拟26题解
题面:https://www.cnblogs.com/Juve/articles/11376806.html A. 嚎叫响彻在贪婪的厂房: 是时候学习一下map和set的用法了...... 贪心:区间 ...
- C++对C的扩展、增强
C++对C的扩展 1. 双冒号::作用域运算符 代码中对同一个变量多次声明,在代码块中使用时,局部变量会将全局变量隐藏.若在代码块使用变量前添加::,表示为全局变量. ::表示作用域运算符,如常见的s ...
- springboot核心技术(三)-----web开发
web开发 1.简介 使用SpringBoot: 1).创建SpringBoot应用,选中我们需要的模块: 2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运 ...
- Gym - 102163M
Gym - 102163M https://vjudge.net/problem/2356949/origin取对数,然后特判特殊情况,就是0的那些情况 #include<iostream> ...
- 9.2专项测试-Android性能测试黑盒分析-1
1. 专项测试 业务测试:面向新需求 回归测试:面向已交付需求 专项测试:面向非功能需求的各类质量唯独特征 表现 用户维度 技术维度 崩溃 crash,弱网 检测崩溃1.某个页面,因为研发处理不合适, ...
- php数据几行代码导出到excel(非插件)
<?php header("Content-type:application/vnd.ms-excel"); header("Content-Disposition ...
- Delphi 设计模式:《HeadFirst设计模式》Delphi7代码---命令模式之SimpleRemoteWithUndoTest[转]
命令模式可以很轻松的实现撤销(Undo)功能. 命令的接受者: 1unit uReceiveObject; 2 3interface 4 5type 6 TLight = class(T ...
- AntColony 磁力搜索引擎的核心
介绍 AntColony(Github)是findit磁力搜索引擎的核心.用来在DHT网络中,收集活跃资源的infohash,下载并解析资源的种子文件,存入数据库等.AntColony是若干功能的合集 ...