Oracle数据库教程
—— oracl e11.2.0.3升级到11.2.0.4出现查询性能问题,分
析处理
在上次我们的博客中提到帮客户升级oda一体机,将数据库从oracle 11.2.0.3升级到oracle 11.2.0.4,顺利升级后,却出现了一些性能问题,比如说查询表空间的情况时,性能比以前下降了很多,执行时间较长,经过检查分析后发现是统计信息缺失所致,现在把整个过程记录下来与大家分享。
1、升级完成后,客户在执行这条语句时,相当慢
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name
order by a.tablespace_name;
大概使用了好几分钟,根据我们以前的经验判断,怀疑可能是回收站可能有大量删除的对象所致
所以直接对回站进行处理
SQL> select count(*) from dba_recyclebin;
COUNT(*)
----------
6455
SQL> purge recyclebin;
Recyclebin purged.
处理好后,我们又重新执行那语句,但仍然非常慢,这个时候感觉奇怪了,于是我们对执行计划进行分析2、分析执行计划后,找到疑点
PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------------------