热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ORA-600错误解决实例

1:周末遭遇停电,新配置的内网测试数据库activedataguard环境自动关闭,今早启动主库后发现报错如下[Oracle@db1~]$sqlplus

1:周末遭遇停电,新配置的内网测试数据库active dataguard 环境自动关闭,今早启动主库后发现报错如下 [Oracle@db1 ~]$ sqlplus

1:周末遭遇停电,新配置的内网测试数据库active dataguard 环境自动关闭,今早启动主库后发现报错如下

[Oracle@db1 ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Mon Jun 17 17:00:57 2013

Copyright (c) 1982, 2009, Oracle. All rights reserved.

SQL> conn /as sysdba

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area 1.3362E+10 bytes

Fixed Size 2217952 bytes

Variable Size 6777997344 bytes

Database Buffers 6576668672 bytes

Redo Buffers 4960256 bytes

Database mounted.

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1],

[6], [301353], [301354], [], [], [], [], [], [], []


2:第一反应先recover下database,再尝试拉起数据库,问题依旧

SQL> recover database;

Media recovery complete.

SQL> alter database open;

alter database open

*

ERROR at line 1:

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1],

[6], [301353], [301354], [], [], [], [], [], [], []


3:于是看alert日志和相关的trace文件,综合判断可能控制文件出现问题

[oracle@db1 ~]$ tail -f alert_db.log

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_ora_32462.trc:

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [6], [301353], [301354], [], [], [], [], [], [], []

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_ora_32462.trc:

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [6], [301353], [301354], [], [], [], [], [], [], []

ORA-600 signalled during: ALTER DATABASE OPEN...

Trace dumping is performing id=[cdmp_20130617170117]

Mon Jun 17 17:02:13 2013

Sweep [inc][24153]: completed

Sweep [inc2][24153]: completed

Mon Jun 17 17:02:38 2013

ALTER DATABASE RECOVER database

Media Recovery Start

started logmerger process

Parallel Media Recovery started with 4 slaves

Mon Jun 17 17:02:38 2013

Recovery of Online Redo Log: Thread 1 Group 3 Seq 6 Reading mem 0

Mem# 0: /u01/app/oracle/oradata/DB/onlinelog/o1_mf_3_8vpmjgoq_.log

Mem# 1: /u01/app/oracle/flash_recovery_area/DB/onlinelog/o1_mf_3_8vpmkm9x_.log

Media Recovery Complete (db)

Completed: ALTER DATABASE RECOVER database

Mon Jun 17 17:02:54 2013

alter database open

Beginning crash recovery of 1 threads

parallel recovery started with 3 processes

Started redo scan

Completed redo scan

read 152 KB redo, 0 data blocks need recovery

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_ora_32462.trc (incident=24154):

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [6], [301353], [301354], [], [], [], [], [], [], []

Incident details in: /u01/app/oracle/diag/rdbms/db1/db/incident/incdir_24154/db_ora_32462_i24154.trc

Mon Jun 17 17:02:55 2013

Trace dumping is performing id=[cdmp_20130617170255]

Aborting crash recovery due to error 600

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_ora_32462.trc:

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [6], [301353], [301354], [], [], [], [], [], [], []

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_ora_32462.trc:

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [6], [301353], [301354], [], [], [], [], [], [], []

ORA-600 signalled during: alter database open...

Mon Jun 17 17:03:13 2013

Sweep [inc][24154]: completed

Sweep [inc2][24154]: completed


4:于是生成控制文件trace控制脚本对控制文件执行恢复


SQL> select open_mode from v$database;

OPEN_MODE

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

MOUNTED

SQL> alter database backup controlfile to trace as '/tmp/1.ctl';

Database altered.

[oracle@db1 ~]$ cat /tmp/1.ctl

CREATE CONTROLFILE REUSE DATABASE "DB" NORESETLOGS FORCE LOGGING ARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 292

LOGFILE

GROUP 1 (

'/u01/app/oracle/oradata/DB/onlinelog/o1_mf_1_8vpmdkl9_.log',

'/u01/app/oracle/flash_recovery_area/DB/onlinelog/o1_mf_1_8vpmdryt_.log'

) SIZE 512M BLOCKSIZE 512,

GROUP 2 (

'/u01/app/oracle/oradata/DB/onlinelog/o1_mf_2_8vpmfqmw_.log',

'/u01/app/oracle/flash_recovery_area/DB/onlinelog/o1_mf_2_8vpmhk2z_.log'

) SIZE 512M BLOCKSIZE 512,

GROUP 3 (

'/u01/app/oracle/oradata/DB/onlinelog/o1_mf_3_8vpmjgoq_.log',

'/u01/app/oracle/flash_recovery_area/DB/onlinelog/o1_mf_3_8vpmkm9x_.log'

) SIZE 512M BLOCKSIZE 512

--STANDBY LOGFILE

-- GROUP 4 (

-- '/u01/app/oracle/oradata/DB1/onlinelog/o1_mf_4_8vpq6nvy_.log',

-- '/u01/app/oracle/flash_recovery_area/DB1/onlinelog/o1_mf_4_8vpq7wk8_.log'

-- ) SIZE 512M BLOCKSIZE 512,

-- GROUP 5 (

-- '/u01/app/oracle/oradata/DB1/onlinelog/o1_mf_5_8vpqbh6s_.log',

-- '/u01/app/oracle/flash_recovery_area/DB1/onlinelog/o1_mf_5_8vpqcmbj_.log'

-- ) SIZE 512M BLOCKSIZE 512,

-- GROUP 6 (

-- '/u01/app/oracle/oradata/DB1/onlinelog/o1_mf_6_8vpqf3rz_.log',

-- '/u01/app/oracle/flash_recovery_area/DB1/onlinelog/o1_mf_6_8vpqfv5w_.log'

-- ) SIZE 512M BLOCKSIZE 512,

-- GROUP 7 (

-- '/u01/app/oracle/oradata/DB1/onlinelog/o1_mf_7_8vpqgw0j_.log',

-- '/u01/app/oracle/flash_recovery_area/DB1/onlinelog/o1_mf_7_8vpqhcql_.log'

-- ) SIZE 512M BLOCKSIZE 512

DATAFILE

'/u01/app/oracle/oradata/DB/datafile/o1_mf_system_8vpm8hf3_.dbf',

'/u01/app/oracle/oradata/DB/datafile/o1_mf_sysaux_8vpm8hjq_.dbf',

'/u01/app/oracle/oradata/DB/datafile/o1_mf_undotbs1_8vpm8hl4_.dbf',

'/u01/app/oracle/oradata/DB/datafile/o1_mf_users_8vpm8hn1_.dbf'

CHARACTER SET ZHS16GBK;

SQL> shutdown immediate

ORA-01109: database not open

Database dismounted.

ORACLE instance shut down.

SQL> startup nomount

ORACLE instance started.

Total System Global Area 1.3362E+10 bytes

Fixed Size 2217952 bytes

Variable Size 6777997344 bytes

Database Buffers 6576668672 bytes

Redo Buffers 4960256 bytes

SQL> @/tmp/1.ctl;

Control file created.


5:重建控制文件后,对数据库进行recover,,成功打开数据库

SQL> alter database open;

alter database open

*

ERROR at line 1:

ORA-01113: file 1 needs media recovery

ORA-01110: data file 1:

'/u01/app/oracle/oradata/DB/datafile/o1_mf_system_8vpm8hf3_.dbf'

SQL> recover database;

Media recovery complete.

SQL> alter database open;

Database altered.

SQL> select open_mode,database_role from v$database;

OPEN_MODE DATABASE_ROLE

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

READ WRITE PRIMARY


6:通过观察alert日志,添加临时表空间数据文件

[oracle@db1 ~]$ tail -f alert_db.log

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_m001_381.trc:

ORA-25153: Temporary Tablespace is Empty

Mon Jun 17 17:17:25 2013

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_j007_400.trc:

ORA-25153: Temporary Tablespace is Empty

Errors in file /u01/app/oracle/diag/rdbms/db1/db/trace/db_j007_400.trc:

ORA-12012: error on auto execute of job 12696

ORA-25153: Temporary Tablespace is Empty

ORA-06512: at "DBSNMP.BSLN_INTERNAL", line 2073

ORA-06512: at line 1

Mon Jun 17 17:18:20 2013

alter tablespace temp add tempfile

Completed: alter tablespace temp add tempfile

SQL> alter tablespace temp add tempfile;

Tablespace altered.


7:观察physical database,发现出现如下问题

[root@db2 ~]# su - oracle

[oracle@db2 ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Mon Jun 17 17:18:50 2013

Copyright (c) 1982, 2009, Oracle. All rights reserved.

SQL> conn /as sysdba

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area 1.3362E+10 bytes

Fixed Size 2217952 bytes

Variable Size 6777997344 bytes

Database Buffers 6576668672 bytes

Redo Buffers 4960256 bytes

Database mounted.

ORA-10458: standby database requires recovery

ORA-01196: file 1 is inconsistent due to a failed media recovery session

ORA-01110: data file 1:

'/u01/app/oracle/oradata/DB2/datafile/o1_mf_system_08oc7c38_.dbf'

SQL> alter database open read only;

alter database open read only

*

ERROR at line 1:

ORA-10458: standby database requires recovery

ORA-01196: file 1 is inconsistent due to a failed media recovery session

ORA-01110: data file 1:

'/u01/app/oracle/oradata/DB2/datafile/o1_mf_system_08oc7c38_.dbf'


8:于是关闭physical standby,在主库上启动system表空间的热备份,拷贝相应的文件至从库指定位置,重新同步正常

SQL> shutdown immediate

ORA-01109: database not open

Database dismounted.

ORACLE instance shut down.

SQL> alter tablespace system begin backup;

Tablespace altered.

[oracle@db1 datafile]$ pwd

/u01/app/oracle/oradata/DB/datafile

[oracle@db1 datafile]$ scp o1_mf_system_8vpm8hf3_.dbf root@db2:/tmp

SQL> alter tablespace system end backup;

Tablespace altered.


推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了Python版Protobuf的安装和使用方法,包括版本选择、编译配置、示例代码等内容。通过学习本教程,您将了解如何在Python中使用Protobuf进行数据序列化和反序列化操作,以及相关的注意事项和技巧。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 仙贝旅行是日本最大的旅游服务平台之一,为广大用户提供优质的日本定制游服务。随着用户数量的增长,仙贝旅行决定与智齿科技合作,全面替换原有客服系统,打造全新的在线客服体系。该体系具备多渠道快速接入的能力,让仙贝旅行轻松与各个渠道的接入用户完成沟通。同时,机器人与人工协同发力,提升客户服务水平。 ... [详细]
  • 本文介绍了一些Java开发项目管理工具及其配置教程,包括团队协同工具worktil,版本管理工具GitLab,自动化构建工具Jenkins,项目管理工具Maven和Maven私服Nexus,以及Mybatis的安装和代码自动生成工具。提供了相关链接供读者参考。 ... [详细]
author-avatar
lt7520
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有