标签云
asm恢复 bbed bootstrap$ dul kcbzib_kcrsds_1 kccpb_sanity_check_2 kcratr_nab_less_than_odr MySQL恢复 obet ORA-00312 ORA-00704 ORA-00742 ORA-01110 ORA-01200 ORA-01555 ORA-01578 ORA-01595 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-600 kcratr_nab_less_than_odr ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 ORACLE恢复 Oracle 恢复 ORACLE数据库恢复 oracle碎片 OSD-04016 YOUR FILES ARE ENCRYPTED 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (112)
- 数据库 (1,877)
- DB2 (22)
- MySQL (82)
- Oracle (1,703)
- Data Guard (53)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (168)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (72)
- Oracle Bug (8)
- Oracle RAC (56)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (659)
- Oracle安装升级 (107)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (91)
- PostgreSQL (37)
- pdu工具 (7)
- PostgreSQL恢复 (13)
- SQL Server (34)
- SQL Server恢复 (14)
- TimesTen (7)
- 达梦数据库 (5)
- 达梦恢复 (3)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (51)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (34)
-
最近发表
- .bres勒索病毒加密数据库dmp文件可恢复
- ORA-600 krsm_mrp_rebuild_lf_list.lno_mismatch
- 记录一次0丢失的ORA-00354: 损坏重做日志块标头故障恢复
- 不当数据库恢复操作导致一个月数据丢失
- obet快速修复oracle 位图损坏块
- 不太常见的10.2.0.1的oracle redo损坏恢复
- obet forcecopy功能抢救硬件故障中的数据文件
- kcratr_nab_less_than_odr和system坏块故障处理
- 通过obet 恢复system坏块,打开数据库
- obet dbv功能完整说明
- 分享一例运行在aix上的sap系统数据库恢复过程
- OBET-Oracle Block Editor Tool使用说明
- 几乎动用了所有手段的Oracle故障恢复
- Oracle Block Edit Tool (obet) 功能增强–2026.07
- Oracle 19c 202607补丁(RUs+OJVM)-19.32
- Patch_SCN快速修复ORA-01555数据库open故障
- 快速处理 ORA-01210: data file header is media corrupt 故障
- ORA-00314: log 3 of thread 1, expected sequence# N doesn’t match 0
- 记录block 0损坏,数据文件大量坏块,使用不当数据库版本恢复等各种操作之后的故障处理
- 需要注意:dbv 检测controlfile可能不准
标签归档:ORA-600 16515
收集统计信息报ORA-00600 16515问题解决
在一套win 11.2.0.1的数据库在收集统计信息报ORA-600 16515错误
SQL> exec dbms_stats.gather_database_stats_job_proc(); BEGIN dbms_stats.gather_database_stats_job_proc(); END; * 第 1 行出现错误: ORA-00600: ????????????, ????: [16515], [U], [40], [6376], [1], [0], [], [], [], [], [], [] ORA-06512: ?? "SYS.DBMS_STATS", line 31228 ORA-06512: ?? line 1 SQL> exec dbms_stats.gather_database_stats(estimate_percent=>100,degree=>4,cascade=>true,granularity=>'ALL'); BEGIN dbms_stats.gather_database_stats(estimate_percent=>100,degree=>4,cascade=>true,granularity=>'ALL'); END; * 第 1 行出现错误: ORA-00600: ????????????, ????: [16515], [U], [40], [6376], [1], [0], [], [], [], [], [], [] ORA-06512: ?? "SYS.DBMS_STATS", line 25335 ORA-06512: ?? "SYS.DBMS_STATS", line 25511 ORA-06512: ?? "SYS.DBMS_STATS", line 25467 ORA-06512: ?? line 1
确认报错对象
SQL> select owner, object_name, object_type 2 from sys.dba_objects 3 where object_id =6375; OWNER ------------------------------ OBJECT_NAME -------------------------------------------------------------------------------- OBJECT_TYPE ------------------- SYS WRI$_SQLMON_USAGE TABLE
对对象进行处理,确认对象本身没有问题,尝试收集统计信息依旧报错
SQL> alter table WRI$_SQLMON_USAGE move;
表已更改。
SQL> select index_name from dba_indexes where table_name='WRI$_SQLMON_USAGE';
未选定行
SQL> SELECT COUNT(1) FROM WRI$_SQLMON_USAGE;
COUNT(1)
----------
1
SQL> exec dbms_stats.gather_database_stats_job_proc();
BEGIN dbms_stats.gather_database_stats_job_proc(); END;
*
第 1 行出现错误:
ORA-00600: ????????????, ????: [16515], [U], [40], [6376], [1], [0], [], [],
[], [], [], []
ORA-06512: ?? "SYS.DBMS_STATS", line 31228
ORA-06512: ?? line 1
删除统计再尝试
SQL> exec dbms_stats.delete_table_stats(ownname=>'SYS',tabname=>'WRI$_SQLMON_USAGE'); PL/SQL 过程已成功完成。 SQL> exec dbms_stats.gather_database_stats_job_proc(); BEGIN dbms_stats.gather_database_stats_job_proc(); END; * 第 1 行出现错误: ORA-00600: ????????????, ????: [16515], [U], [40], [6376], [1], [0], [], [], [], [], [], [] ORA-06512: ?? "SYS.DBMS_STATS", line 31228 ORA-06512: ?? line 1
使用ANALYZE收集统计信息正常
SQL> ANALYZE TABLE WRI$_SQLMON_USAGE COMPUTE STATISTICS FOR ALL INDEXED COLUMNS; 表已分析。
删除hist_head$中对应报错行记录,ORA-00600 16515问题解决
SQL> SELECT rowid,obj#,intcol#,timestamp# FROM hist_head$ WHERE obj#=6376 AND intcol#=1; ROWID OBJ# INTCOL# TIMESTAMP# ------------------ ---------- ---------- -------------- AAAAHAAABAAAIELABQ 6376 1 01-4? -24 SQL> ALTER SYSTEM FLUSH SHARED_POOL; 系统已更改。 SQL> DELETE FROM hist_head$ WHERE ROWID='AAAAHAAABAAAIELABQ'; 已删除 1 行。 SQL> COMMIT; 提交完成。 SQL> begin 2 dbms_stats.delete_table_stats ( ownname => user, tabname => 'WRI$_SQLMON_USAGE', cascade_parts => true, cascade_col umns => true, cascade_indexes => true, force => true); 3 end; 4 / PL/SQL 过程已成功完成。 SQL> exec dbms_stats.gather_database_stats_job_proc(); PL/SQL 过程已成功完成。
参考文档:DBMS_STATS.DELETE_TABLE_STATS Fails With ORA-600 [16515] (Doc ID 1233745.1)

加我微信(17813235971)
加我QQ(107644445)

