标签云
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 比特币加密文章分类
- MongoDB (1)
- MongoDB恢复 (1)
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (112)
- 数据库 (1,884)
- DB2 (22)
- MySQL (82)
- Oracle (1,709)
- 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 (73)
- Oracle Bug (8)
- Oracle RAC (56)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (662)
- Oracle安装升级 (108)
- 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)
- MongoDB (1)
-
最近发表
- 记录19c ASM磁盘掉线触发ORA-59048故障处理
- aix平台Oracle数据库由于断电无法启动故障处理
- 断电引起ORA-600 3005故障处理
- 记录一次云存储资源到期之后引起的数据库恢复
- Firebird 损坏数据库数据抢救工具—firebirdext
- Oracle 19c 202610补丁(RUs+OJVM)-19.33
- 由于con$.con#值达到极限,触发数据库增加约束报ORA-600 12807错误
- MongoDB 离线提取工具—mongoext
- .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使用说明
月归档:六月 2012
记录另一起ORA-00600[13013]处理
发现ORA-00600[13013]错误
During the execution of an UPDATE statement, after several attempts (Arg [a] passcount) we are unable to get a stable set of rows that conform to the WHERE clause.
Fri Jun 1 03:00:33 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_12104.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12596578], [17], [] Sat Jun 2 03:01:05 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_1052.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12596578], [17], [] Sun Jun 3 15:00:50 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_13876.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12603219], [17], [] Mon Jun 4 03:01:05 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_7704.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12596578], [17], [] Tue Jun 5 03:00:35 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_27983.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12596578], [17], [] Wed Jun 6 03:01:07 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_19204.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12596578], [17], [] Thu Jun 7 03:00:37 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_m000_7273.trc: ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12605556], [17], []
以前处理过一次ORA-600[13013],里面包含了各参数含义,这次也按照常规方法处理,分析如下:
1.通过trace文件找出对应表
*** 2012-06-01 03:00:33.325 ksedmp: internal or fatal error ORA-00600: internal error code, arguments: [13013], [5001], [8943], [12596577], [25], [12596578], [17], [] Current SQL statement for this session: UPDATE WRH$_SQL_BIND_METADATA SET snap_id = :lah_snap_id WHERE dbid = :dbid AND (SQL_ID) IN (SELECT STR1_KEWRATTR FROM X$KEWRATTRSTALE)
2.通过ORA-600[13013]中表示rdba参数找出表
SQL> select DBMS_UTILITY.data_block_address_file (12596577) "file#",
2 DBMS_UTILITY.data_block_address_block (12596577) "block#"
3 from dual;
file# block#
---------- ----------
3 13665
SQL> select * from dba_extents where 13665 between block_id and block_id + blocks and file_id=3;
OWNER SEGMENT_NAME SEGMENT_TYPE EXTENT_ID FILE_ID BLOCK_ID BLOCKS
---------- -------------------- --------------- --------------- ---------- ------- ------
SYS SYS_LOB0000008933C00 LOBSEGMENT 7 3 13657 8
SYS WRH$_SQL_BIND_METADA TABLE 1 3 13665 8
检查对象WRH$_SQL_BIND_METADA是否有坏块或者表和index不一致
SQL> analyze table SYS.WRH$_SQL_BIND_METADATA validate structure cascade online; Table analyzed.
这里分析WRH$_SQL_BIND_METADA表正常,但是通过上面的查询证明WRH$_SQL_BIND_METADA的第一个extent的第一个数据块上可能出现问题,使得analyze未检查(自己猜猜,未做深入验证).针对这个问题,直接备份WRH$_SQL_BIND_METADATA表,truncate掉该表,然后重新插入数据(注意操作时间避开awr插入数据时间段)
create table SQL_BIND_METADATA_BAK AS SELECT * FROM SYS.WRH$_SQL_BIND_METADATA; TRUNCATE TABLE SYS.WRH$_SQL_BIND_METADATA; INSERT INTO SYS.WRH$_SQL_BIND_METADATA SELECT * FROM SQL_BIND_METADATA_BAK; DROP TABBLE SQL_BIND_METADATA_BAK PURGE;
ORA-600[6749] 发生在 SYSMAN.MGMT_METRICS_RAW表
数据库alert日志长时间出现ORA-00600[6749]错误
日志报错如下
Fri Jun 1 12:01:30 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_396.trc: ORA-00600: internal error code, arguments: [6749], [3], [12596882], [49], [], [], [], [] Fri Jun 1 12:01:34 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_396.trc: Fri Jun 1 13:01:06 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_13226.trc: ORA-00600: internal error code, arguments: [6749], [3], [12596882], [49], [], [], [], [] Fri Jun 1 13:01:10 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_13226.trc: Fri Jun 1 14:01:46 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_26691.trc: ORA-00600: internal error code, arguments: [6749], [3], [12596882], [49], [], [], [], [] Fri Jun 1 14:01:51 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_26691.trc: Fri Jun 1 15:01:21 2012 Errors in file /opt/oracle/admin/oraapp/bdump/oraapp_j000_7119.trc: ORA-00600: internal error code, arguments: [6749], [3], [12596882], [49], [], [], [], []
查看trace日志
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /opt/oracle/product/10/oraapp
System name: Linux
Node name: oracle2
Release: 2.6.18-92.el5
Version: #1 SMP Tue Apr 29 13:16:15 EDT 2008
Machine: x86_64
Instance name: oraapp
Redo thread mounted by this instance: 1
Oracle process number: 44
Unix process pid: 26691, image: oracle@oracle2 (J000)
*** ACTION NAME:(target 5) 2012-06-01 14:01:00.298
*** MODULE NAME:(Oracle Enterprise Manager.rollup) 2012-06-01 14:01:00.298
*** SERVICE NAME:(SYS$USERS) 2012-06-01 14:01:00.298
*** SESSION ID:(406.24103) 2012-06-01 14:01:00.298
Dumping current redo log in thread 1
DUMP OF REDO FROM FILE '/opt/oracle/oradata/oraapp/systable/redo03.log'
Opcodes 11.*
DBAs (file#, block#):
(3, 13970)
RBAs: 0x000000.00000000.0000 thru 0xffffffff.ffffffff.ffff
SCNs: scn: 0x0000.00000000 thru scn: 0xffff.ffffffff
Times: creation thru eternity
FILE HEADER:
Compatibility Vsn = 169869568=0xa200100
Db ID=1462349529=0x5729aed9, Db Name='ORAAPP'
Activation ID=1462334681=0x572974d9
Control Seq=2614156=0x27e38c, File size=245760=0x3c000
File Number=3, Blksiz=512, File Type=2 LOG
descrip:"Thread 0001, Seq# 0000003963, SCN 0x0000129fc9df-0xffffffffffff"
猜测ORA-600[6749]部分参数
SQL> select DBMS_UTILITY.data_block_address_file (12596882) "file#",
2 DBMS_UTILITY.data_block_address_block (12596882) "block#"
3 from dual;
file# block#
---------- ----------
3 13970
ORA-600[6749][a][b]{c}
这里证明c表示rdba
根据dba查询对象
SQL> select * from dba_extents where 13970 between block_id and block_id + blocks and file_id=3; OWNER SEGMENT_NAME SEGMENT_TYPE ---------- ------------------------------- ------------------- SYSMAN SYS_IOT_OVER_10448 TABLE SQL> select owner,iot_name from dba_tables where table_name = 'SYS_IOT_OVER_10448'; OWNER IOT_NAME ------------------------------ ------------------------------ SYSMAN MGMT_METRICS_RAW SQL> ANALYZE TABLE SYSMAN.MGMT_METRICS_RAW VALIDATE STRUCTURE CASCADE; Table analyzed.
按照常理ORA-00600[6749]错误是因为坏块或者表和索引数据不一致导致,通过ANALYZE可以检查出来.这里显示正常,那可能是其他原因导致,查询MOS果然发现是ORA-600 [6749] Occurring on SYSMAN.MGMT_METRICS_RAW [ID 467439.1]
解决方法
The following workaround may resolve the problem temporarily: 1. Ensure you have a good backup before proceeding. 2. Create a copy of the SYSMAN.MGMT_METRICS_RAW table: SQL> create table SYSMAN.MGMT_METRICS_RAW_COPY as select * from SYSMAN.MGMT_METRICS_RAW; 3. Truncate the table: SQL> truncate table SYSMAN.MGMT_METRICS_RAW; May need to disable trigger: "sysman.raw_metrics_after_insert" before proceeding. Re-enable after the insert. 4. Re-insert the rows: SQL> insert into SYSMAN.MGMT_METRICS_RAW select * from SYSMAN.MGMT_METRICS_RAW_COPY; SQL> commit; 5. Drop the copy table: SQL> drop table SYSMAN.MGMT_METRICS_RAW_COPY;
DEFERRED_SEGMENT_CREATION 参数相关说明
DEFERRED_SEGMENT_CREATION specifies the semantics of deferred segment creation. If set to true, then segments for tables and their dependent objects (LOBs, indexes) will not be created until the first row is inserted into the table.
这句话的意思是 DEFERRED_SEGMENT_CREATION 参数的作用是:创建表的时候延迟创建这个表相关的segment(包括lobs,indexes),直到第一次插入数据的时候才创建segment.补充说明:DEFERRED_SEGMENT_CREATION 参数从11.2.0.1引进,默认值为true;如果要使其恢复老版本功能,设置该参数为false.
DEFERRED_SEGMENT_CREATION默认值
SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production PL/SQL Release 11.2.0.3.0 - Production CORE 11.2.0.3.0 Production TNS for Linux: Version 11.2.0.3.0 - Production NLSRTL Version 11.2.0.3.0 - Production SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') "WWW.XIFENFEI.COM" FROM DUAL; WWW.XIFENFEI.COM -------------------------------------- 2012-06-01 05:31:03 SQL> show parameter DEFERRED_SEGMENT_CREATION; NAME TYPE VALUE ------------------------------------ ---------- -------- deferred_segment_creation boolean TRUE
DEFERRED_SEGMENT_CREATION效果验证
SQL> create table t_xifenfei (id number,name varchar2(30));
Table created.
SQL> create index ind_t_xifenfei on t_xifenfei(id);
Index created.
SQL> select segment_name,segment_type from dba_segments where
2 segment_name in('T_XIFENFEI','IND_T_XIFENFEI') AND OWNER='CHF';
no rows selected
--未创建segment
SQL> INSERT INTO T_XIFENFEI VALUES(1,'WWW.XIFENFEI.COM');
1 row created.
SQL> commit;
Commit complete.
SQL> select segment_name,segment_type from dba_segments where
2 segment_name in('T_XIFENFEI','IND_T_XIFENFEI') AND OWNER='CHF';
SEGMENT_NAME SEGMENT_TYPE
-------------------- ------------------------------------
IND_T_XIFENFEI INDEX
T_XIFENFEI TABLE
--创建segment
SQL> alter session set deferred_segment_creation=false;
Session altered.
SQL> create table t_xifenfei_2 (id number,name varchar2(30));
Table created.
SQL> select segment_name,segment_type from dba_segments where segment_name='T_XIFENFEI_2';
SEGMENT_NAME SEGMENT_TYPE
-------------------- ------------------------------------
T_XIFENFEI_2 TABLE
--创建segment
问题1(朋友疑惑为什么它没有给相关表空间分配配额但是创建表成功)
SQL> create user xifenfei identified by xifenfei default tablespace users;
User created.
SQL> grant connect,resource to xifenfei;
Grant succeeded.
SQL> revoke unlimited tablespace from xifenfei;
Revoke succeeded.
SQL> alter user xifenfei quota unlimited on users;
User altered.
SQL> conn xifenfei/xifenfei
Connected.
SQL> create table t_xifenfei (id number,name varchar2(30)) tablespace system;
Table created.
--在system表空间无配额,但是创建表成功
SQL> insert into t_xifenfei values(1,'www.xifenfei.com');
insert into t_xifenfei values(1,'www.xifenfei.com')
*
ERROR at line 1:
ORA-01950: no privileges on tablespace 'SYSTEM'
--插入数据库失败,因为在system上创建segment失败
SQL> alter session set deferred_segment_creation=false;
Session altered.
SQL> create table t_xifenfei_2 (id number,name varchar2(30)) tablespace system;
create table t_xifenfei_2 (id number,name varchar2(30)) tablespace system
*
ERROR at line 1:
ORA-01950: no privileges on tablespace 'SYSTEM'
--deferred_segment_creation设置为false后,创建表直接失败
问题2(exp未导segment不存在表)
该问题帮朋友解决过.因为暂时无11.2.0.1版本数据库,直接摘录MOS
In 11.2 the deferred storage segment feature is enabled by default.
Conventional export (exp) silently skips tables with deferred segment
creation if no segment has yet been created. ie: If the table does
not yet contain any rows. In some cases "exp" will report EXP-11 for
the table.
eg:
create table t(c1 int) tablespace sysaux;
select segment_created from user_tables where table_name='T';
SEG
---
NO
Table level export:
exp scott/tiger file=/tmp/scott.dmp tables=t
^
EXP-11 SCOTT.T does not exist
Schema level export:
exp scott/tiger file=/tmp/scott.dmp owner=scott statistics=none
^
Export completes successfully but silently does not export
table "T".
Rediscovery Notes:
Tables that may be affected by this can be found thus:
select owner, table_name from dba_tables
where segment_created='NO';
EXP-11 on export for tables with no data.
Tables missing after exp/imp
Workaround
Re-create the missing table at the export site from DDL.
(the table did not contain rows otherwise it would have
had a segment created for it)
In 11.2 the deferred storage segment feature is enabled by default.
Conventional export (exp) silently skips tables with deferred segment
creation if no segment has yet been created. ie: If the table does
not yet contain any rows. In some cases "exp" will report EXP-11 for
the table.
eg:
create table t(c1 int) tablespace sysaux;
select segment_created from user_tables where table_name='T';
SEG
---
NO
Table level export:
exp scott/tiger file=/tmp/scott.dmp tables=t
^
EXP-11 SCOTT.T does not exist
Schema level export:
exp scott/tiger file=/tmp/scott.dmp owner=scott statistics=none
^
Export completes successfully but silently does not export
table "T".
Rediscovery Notes:
Tables that may be affected by this can be found thus:
select owner, table_name from dba_tables
where segment_created='NO';
EXP-11 on export for tables with no data.
Tables missing after exp/imp
Workaround
Re-create the missing table at the export site from DDL.
(the table did not contain rows otherwise it would have
had a segment created for it)
This issue is fixed in
•12.1 (Future Release)
•11.2.0.2 (Server Patch Set)

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

