ORA-01555错误浅析(3)
2009-05-26 13:14:39 来源:WEB开发网Optimizer goal: CHOOSE
Parsing user id: 30
********************************************************************************
... ...
SELECT QID
FROM
CSQUE QUE, ASTP STP WHERE
QUE.CDE IN (:B3, :B2) AND QUE.TID =
STP.TID AND STP.ACDE = :B1 ORDER BY
QUE.CDE, QUE.DT
call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 1 0.00 0.00 0 0 0 0
Execute 2 0.00 0.00 0 0 0 0
Fetch 2682 0.41 0.54 7557 10968 0 2680
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 2685 0.41 0.54 7557 10968 0 2680
Misses in library cache during parse: 1
Optimizer goal: CHOOSE
Parsing user id: 31 (recursive depth: 1)
********************************************************************************
... ...
7 user SQL statements in session.
41 internal SQL statements in session.
48 SQL statements in session.
********************************************************************************
Trace file: prod_ora_29225.trc
Trace file compatibility: 9.02.00
Sort options: default
1 session in tracefile.
7 user SQL statements in trace file.
41 internal SQL statements in trace file.
48 SQL statements in trace file.
20 unique SQL statements in trace file.
8626 lines in trace file.
从trace文件中,发现有一条语句性能相当差,通过对这条语句做SQL Trace,发现它的consistent gets达到80万!
于是对该语句进行优化,调整了它的写法,并建立了缺少的索引(优化过程略)。最终将consistent gets数量降低到了5000。
重新安排上线,经过一周的观察,1555错误没再发生。
其实这个案例的解决是比较简单的,最终的处理就是将一条语句进行优化。
系列文章:
ORA-01555错误浅析(1)
ORA-01555错误浅析(2)
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接