2014-06-20 BaoXinjian一、摘要手工指定SQL语句的执行计划尽管oracle优化器很智能,但有时候你想自己选择执行计划,可以通过hint实现。在开发测试环境中,可以通过hint测试不同执行计划的性能。Hint的缺点是增加了管理代码的额外负担,当数据库或环境发生变化时,如果不修改hi...
分类:
数据库 时间:
2014-09-28 15:59:15
阅读次数:
330
1.硬件和系统配置 CPU 双核 内存 1480M swap 4G /u01 16G 核心版本 3.10.0-123.el7.x86_642.配置系统和安装所需软件包 2.1 关闭selinux sed -i 's/SELINUX=enforcing/SELINUX...
分类:
数据库 时间:
2014-09-28 02:21:10
阅读次数:
6602
如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以断定是执行计划出了问题。看懂执行计划也就成了SQL优化的先决条件。这里的SQL优化指的是SQL性能问题...
分类:
数据库 时间:
2014-09-27 02:42:49
阅读次数:
318
AUTOTRACE是一项 SQL*Plus 功能,自动跟踪为 SQL 语句生成一个执行计划并且提供与该语句的处理有关的统计。SQL*Plus AUTOTRACE 可以用来替代 SQL Trace 使用,AUTOTRACE 的好处是您不必设置跟踪文件的格式,并且它将自动为 SQL 语句显示执行计划。然...
分类:
其他好文 时间:
2014-09-26 09:04:38
阅读次数:
223
同事发来2个语句,说语句1跑得慢,语句2很快就出结果。一执行,果然很慢。仔细发现,2个语句不等价。
语句1:
select l.*,o.object_name
from v$locked_object l left join all_objects o on l.object_id=o.object_id;
语句2:
select l.*,o.object_name
from v$...
分类:
其他好文 时间:
2014-09-25 12:15:08
阅读次数:
350
声明:以下均来自于MySQL英文手册5.6。 1.MySQL所有的join都是使用 nest-loop join 算法(嵌套循环算法)。 2.对于一组joins,MySQL的join算法会从第一个表读取一行,然后一直往后逐个表找匹配行,如果某一行能够...
分类:
数据库 时间:
2014-09-25 04:48:48
阅读次数:
239
2014-09-24 BaoXinjian一、摘要SQL 语句的SQL 执行计划发生更改时,可能存在性能风险。SQL 计划发生更改的原因有很多,如优化程序版本、优化程序统计信息、优化程序参数、方案定义、系统设计和SQL 概要文件创建等。SQL 计划管理是一种随Oracle Database 11g ...
分类:
数据库 时间:
2014-09-25 01:16:38
阅读次数:
498
四、分析执行计划创建索引根据语句的执行计划来判断应该对什么表创建什么索引,是常用优化技巧。其实文章前面的例子已经告诉读者如何结合statistics profile和statistics IO语句的输出来创建索引。这里分析一个稍微复杂一些的例子。SQL语句如下:SELECT CurrentseNo ...
分类:
数据库 时间:
2014-09-24 19:49:17
阅读次数:
221
使用sql profile稳定SQL执行计划的使用示例...
分类:
数据库 时间:
2014-09-18 19:03:44
阅读次数:
342
续上篇:http://blog.csdn.net/bisal/article/details/38919181
3. AUTOTRACE...
分类:
数据库 时间:
2014-09-17 08:56:52
阅读次数:
205