一次ORA-4030问题诊断及解决(三)
2008-09-08 12:51:03 来源:WEB开发网已选择14行。
这时10g的统计信息已经导入到9204环境中,如果忘记重新收集统计信息就会导致这个错误的产生:
SQL>EXECDBMS_STATS.GATHER_TABLE_STATS(USER,'ORD_HIT_COMM')
PL/SQL 过程已成功完成。
SQL>SELECTCOLUMN_NAME,NUM_DISTINCT,NUM_NULLS,DENSITY,NUM_BUCKETS
2FROMUSER_TAB_COLUMNS
3WHERETABLE_NAME='ORD_HIT_COMM'
4ANDCOLUMN_NAME='ENABLE_FLAG';
COLUMN_NAMENUM_DISTINCTNUM_NULLSDENSITYNUM_BUCKETS
-------------------------------------------------------------------------
ENABLE_FLAG20.51
SQL>EXPLAINPLANFOR
2SELECT*FROMORD_HIT_COMMWHEREENABLE_FLAG='1';
已解释。
SQL>SELECT*FROMTABLE(DBMS_XPLAN.DISPLAY);
PLAN_TABLE_OUTPUT
---------------------------------------------------------------------------------
----------------------------------------------------------------------
|Id|Operation|Name|Rows|Bytes|Cost|
----------------------------------------------------------------------
|0|SELECTSTATEMENT||889K|632M|8932|
|*1|TABLEACCESSFULL|ORD_HIT_COMM|889K|632M|8932|
----------------------------------------------------------------------
PredicateInformation(identifiedbyoperationid):
---------------------------------------------------
1-filter("ORD_HIT_COMM"."ENABLE_FLAG"='1')
Note:cpucostingisoff
已选择14行。
这个问题也从另一个角度说明,进行跨版本迁移,测试工作的重要性。
- ››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修改表的两种方式
更多精彩
赞助商链接