当前位置:  数据库>oracle

Oracle ORA-600[4193] 解决方法 说明

    来源: 互联网  发布时间:2017-05-04

    本文导语: ORA-600[41XX] 这种错误基本都于UNDO 有关系。关于ORA-600参数的更多说明,参考我的Blog:ORA-600 各个参数含义说明   ORA-600[4193] 这个错误也是与UNDO 有关系,MOS 上有几篇相关的说明文章. Copying databasefrom one server to another server and getti...

ORA-600[41XX] 这种错误基本都于UNDO 有关系。关于ORA-600参数的更多说明,参考我的Blog:ORA-600 各个参数含义说明  

ORA-600[4193] 这个错误也是与UNDO 有关系,MOS 上有几篇相关的说明文章.

Copying databasefrom one server to another server and getting an ORA-600 [4193] error whentrying to open the database on the destination server.

The online redologs were copied when the source database was open, online redo logsshould never be copied when the database is open.

In this instancethe datafiles were being copied properly after the tablespaces were put in tobackup mode, however, online redo logs should only be copied if the sourcedatabase is shutdown first before copying the online redo logs.  Thesource database needed to remain open so, the datafiles were copied again (withthe tablespaces in backup mode) and then a number of archivelogs weretransferred over to the new server and after the last archivelog was appliedthe database could be opened with resetlogs and new online redo logs werecreated on the destination server.

Tue Jul 17 13:38:13 2007 
Errors in file /home/Oracle/oracle/product/10.2.0/yms/rdbms/log/yms_smon_8337.trc: 
ORA-00607: Internal error occurred while making a change to a data block 
ORA-00600: internal error code, arguments: [4193], [3552], [3554], [], [], [] 



SO: 0xdfaec728, type: 24, owner: 0xdf266580, flag: INIT/-/-/0x00 

          (buffer) PR: 0xdf1f1338 FLG: 0x1000 
          class bit: 0x80000 
          kcbbfbp: [BH: 0xded4bf40, LINK: 0xdfaec768] 
          kcbbfbx[0]: [BH: 0xdece41d8, LINK: 0xdfaec788] 
          where: ktuwh01: ktugus, why: 0 
        buffer tsn: 2 rdba: 0x00c00002 (3/2) 
        scn: 0x0000.03c95628 seq: 0x01 flg: 0x00 tail: 0x56280e01 
        frmt: 0x02 chkval: 0x0000 type: 0x0e=KTU UNDO HEADER W/UNLIMITED EXTENTS 
      BH (0xdece41d8) file#: 3 rdba: 0x00c003b6 (3/950) class: 20 ba: 0x11d6ba000 
        set: 6 blksize: 8192 bsi: 0 set-flg: 0 pwbcnt: 0 
        dbwrid: 0 obj: -1 objn: 0 tsn: 2 afn: 3 
        hash: [df870f70,df870f70] lru: [dece4488,dece4028] 
        obj-flags: object_ckpt_list 
        ckptq: [dedac4a0,ded47cb8] fileq: [dedac500,ded47cc8] objq: [ded47d78,db7bfd78] 
        use: [dfaec788,dfaec788] wait: [NULL] 
        st: XCURRENT md: EXCL tch: 0 
        flags: mod_started gotten_in_current_mode block_written_once 
        change state: ACTIVE 
        change count: 1 
        LRBA: [0xac3.4de07.0] HSCN: [0xffff.ffffffff] HSUB: [65535] 
        Using State Objects 
          ---------------------------------------- 
          SO: 0xdfaec728, type: 24, owner: 0xdf266580, flag: INIT/-/-/0x00 
          (buffer) PR: 0xdf1f1338 FLG: 0x1000 
          class bit: 0x80000 
          kcbbfbp: [BH: 0xded4bf40, LINK: 0xdfaec768] 
          kcbbfbx[0]: [BH: 0xdece41d8, LINK: 0xdfaec788] 
          where: ktuwh01: ktugus, why: 0 
        buffer tsn: 2 rdba: 0x00c003b6 (3/950) 
        scn: 0x0000.03be3c7d seq: 0x5a flg: 0x04 tail: 0x3c7d025a 
        frmt: 0x02 chkval: 0x0868 type: 0x02=KTU UNDO BLOCK 
      ---------------------------------------- 
Error 607 in redo application callback 
TYP:0 CLS:20 AFN:3 DBA:0x00c003b6 OBJ:4294967295 SCN:0x0000.03be3c7d SEQ: 90 OP:5.1 
ktudb redo: siz: 132 spc: 4462 flg: 0x0012 rec: 0x09  


































.045.00006c61 cnt: 0x60 irb: 0x60 icl: 0x0 flg: 0x0000

When we try toapply redo to an undo block (forward changes are made by  the applicationof redo to a block) we check that the seq# in the undo  record matches theseq# in the redo record.

These seq#should be the  same because when we apply a redo record we must apply itto the correct version of the block.

We can onlyapply a redo record to a  block that contains the same seq# as in the redorecord. 

If the seq# do not match then ORA-600[4193][a].[b] is raised. .

Arg [a] Undorecord seq number --> seq: 0xde0 = 3552
Arg [b] Redo record seq number --> seq: 0x0de2   = 3554

SYS@anqing1(rac1)>  Select to_number('de0','xxxx') from dual;

TO_NUMBER('DE0','XXXX')

-----------------------

                   3552

This implies some kind of block corruptionin either the redo or the undo block. 

相关的文章参考:

Oracledatafile block 格式 说明
Oracle 实例恢复时 前滚(roll forward) 后滚(roll back) 问题

1.2.3.1 If Database is opened:

1) Find out the rollback segment, based onthe first part of the xid: 0x0002.045.00006c61

  usn=2 is the segment_id

    selectsegment_name,status from dba_rollback_segs where segment_id=2;

    RS_DATA1   ONLINE

 

2) Dump the transaction table of the rollbacksegment to see if all TX are commited:

    alter system dump undoheader RS_DATA1;

Oracle dumpundo 说明

3) check the trace file created underuser_dump_dest

     In the trace filesearch for the Keyword "TRN TBL" 

TRN TBL::  

index state cflags wrap#   uel   scn            dba 
----------------------------------------------------------------------------- 
0x00   9     0x00 0x21eb1 0x0023 0x0000.d28c43e9 0x00000000 ......



state=9 means transaction is committed

 

4) offline the rollback segment:

     alter rollbacksegment rs_data1 offline; 
      select status from dba_rollback_segs wheresegment_id=2; 

5)   if STATUS=OFFLINE


      droprollback segment RS_DATA1;

1.2.3.2 If Database doesn't open:

1.   a) If using rollbacksegments, remove the rollback_segments line from init.ora, and open database

      b) If usingundo segments set undo_management = manual in init.ora/spfile, and try to opendatabase.

2. If database opens means all transactionsare committed, and you can drop the rollback segment or the undo tablespace

MOS:

ORA-600 [4193] "seq# mismatch whileadding undo record" [ID 39282.1]

Bug 8240762 - Undo corruptions with ORA-600[4193]/ORA-600 [4194] or ORA-600 [4137] [ID 8240762.8]

  ORA-600 [4193] / ORA-600 [4194] for newtransactions

 ORA-600 [4137] for a transaction rollback

 

Undo segment shrink is internally done by Oracle.

 

Workaround

      Drop the undo segment.

 

Affects:

Product (Component)

Oracle Server (Rdbms)

Range of versions believed to be affected

Versions >= 10.2 but BELOW 11.2

Versions confirmed as being affected

Platforms affected

Generic (all / most platforms affected)

Fixed:

This issue is fixed in

 

在Oracle 10.2 以上到11.2 的DB 会受Bug 8240762的影响导致undo 的corruption。在10.2.0.5 中已经修复了这个bug。如果出现这种问题,drop 对应的undo segment 即可。


    
 
 

您可能感兴趣的文章:

  • Oracle新手教程 手工创建数据库的全部脚本及说明
  • 求详细linux(redhed9)上安装oracle9i的说明书?
  • ORACLE 中几个难以理解的概念说明
  • Oracle 数据库(oracle Database)Select 多表关联查询方式 iis7站长之家
  • ORACLE实现字段自增示例说明
  • Oracle中手工创建数据库的全部脚本与说明
  • Oracle 高速批量数据加载工具sql*loader使用说明
  • Oracle 数据库导出(exp)导入(imp)说明
  • 关于Oracle 数据库的配置方案说明
  • Oracle 启动例程 STARTUP参数说明
  • Oracle 语句优化分析说明第1/2页
  • oracle iSQL*PLUS配置设置图文说明
  • oracle常用数据类型说明
  • 解决oracle用户连接失败的解决方法
  • Oracle Connect to Idle Instance解决方法
  • Linux下安装Tomcat后与Oracle冲突的解决
  • linux下安装oracle,出现没有权限的报警,怎么解决?
  • 安装Oracle加载数据库错误areasQueries的解决
  • Oracle 11g 相关工具netca,dbca乱码之解决
  • Linux安装Oracle 11时报错DISPLAY解决方案
  • Linux下Oracle安装时遇到的问题及解决
  • 简单的Oracle小问题解决
  • oracle中文乱码解决的办法
  • 关于系统重装后Oracle数据库完全恢复的解决办法
  • 安装oracle9时,安装界面的字体无法正确显示,怎么解决啊???
  • Oracle安装后8080和80端口被占用的解决办法
  • oracle远程连接服务器出现 ORA-12170 TNS:连接超时 解决办法
  • oracle 实际值超过数据库某个字段指定长度报错解决
  • Linux下命令行启动oracle时报错的解决
  • 急!急!jbuilder中新建oracle数据源的问题,解决立即给分!
  • Linux系统下安装Oracle X11错误解决办法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux下安装oracle后使用命令行启动的方法 linux启动oracle
  • ORACLE 中修改用户密码的方法
  • Linux下完全卸载ORACLE 10G的方法
  • 将Oracle 8i数据成功移植Oracle 10g的方法
  • oracle增加表空间大小两种实现方法
  • linux下用ODBC链接Oracle怎么连啊?跪求具体方法!!!
  • Linux系统下查看oracle SID的方法
  • oracle 彻底删除方法
  • window中oracle环境变量设置方法分享
  • Oracle 忘记密码的找回方法
  • Oracle中serveroutput参数一次设置永久保存方法
  • Oracle指定IP访问数据库方法
  • Oracle SID存在解決方法
  • 登录oracle数据库时密码忘记的解决方法
  • PB7 连接 Oracle 的设置方法
  • Oracle删除后不能重新安装的解决方法
  • oracle删除文件后数据库启动不了的处理方法
  • 跪求UNIX 下C用OCI连接ORACLE方法。高手进!!!
  • 彻底删除Oracle数据库的方法
  • oracle drop table(表)数据恢复方法
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,