ORA-600[kcratr_scan_lastbwr]逻辑坏块解决

数据库版本:

11.2.0.3

问题现象:

今天在启动一台测试数据库的时候,发现db不能open,报错如下:

ERROR at line 1:

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [],[], [], [], [], [], [], [], []

解决过程:

1、检查alert日志

Mon Jul 22 11:35:12 2013

ALTER DATABASE OPEN

Beginning crash recovery of 1 threads

parallel recovery started with 3 processes

Started redo scan

Hex dump of (file 3, block 272) in trace file /opt/oracle/diag/rdbms/ebai/ebai/trace/ebai_ora_4930.trc

Reading datafile ‘/oracle/oradata/ebai/undotbs01.dbf‘ for corruption at rdba: 0x00c00110 (file 3, block 272)

Reread (file 3, block 272) found same corrupt data (logically corrupt)

Write verification failed for File 3 Block 272 (rdba 0xc00110)

Errors in file /opt/oracle/diag/rdbms/ebai/ebai/trace/ebai_ora_4930.trc  (incident=71353):

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []

Incident details in: /opt/oracle/diag/rdbms/ebai/ebai/incident/incdir_71353/ebai_ora_4930_i71353.trc

Use ADRCI or Support Workbench to package the incident.

See Note 411.1 at My Oracle Support for error and packaging details.

Aborting crash recovery due to error 600

Errors in file /opt/oracle/diag/rdbms/ebai/ebai/trace/ebai_ora_4930.trc:

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []

Errors in file /opt/oracle/diag/rdbms/ebai/ebai/trace/ebai_ora_4930.trc:

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []

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

Dumping diagnostic data in directory=[cdmp_20130722113516], requested by (instance=1, osid=4930), summary=[incident=71353].

Mon Jul 22 11:36:11 2013

Sweep [inc][71353]: completed

Sweep [inc2][71353]: completed

2、分析并解决问题

alert日志里边其实已经说得很清楚了,实际上连trace文件基本都不需要查看了。上网简单goole了一下,就有解决办法,直接噶搞吧。

suse11sp2:/oracle/oraarch> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Mon Jul 22 14:45:49 2013

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

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select status from v$instance;

STATUS

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

MOUNTED

SQL> select open_mode from v$database;

OPEN_MODE

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

MOUNTED

SQL> recover database;

Media recovery complete.

SQL>

SQL>

SQL> alter database open;

Database altered.

SQL>

SQL>

SQL> select status from v$instance;

STATUS

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

OPEN

SQL> select open_mode from v$database;

OPEN_MODE

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

READ WRITE

3、验证处理效果

执行一次干净关闭,然后在打开,不在报错,问题处理完毕。

SQL> alter system checkpoint;

System altered.

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL>

SQL>

SQL>

SQL>

SQL> startup

ORACLE instance started.

Total System Global Area 4125462528 bytes

Fixed Size                  2234840 bytes

Variable Size             956302888 bytes

Database Buffers         3154116608 bytes

Redo Buffers               12808192 bytes

Database mounted.

Database opened.

SQL>

SQL>

时间: 2024-10-29 04:11:53

ORA-600[kcratr_scan_lastbwr]逻辑坏块解决的相关文章

一次意外情况出现逻辑坏块的处理

项目是一个政府内部办公应用,环境是这样的,两个节点,配合深信服的负载均衡器,组成高可用,挂载宏衫存储. 准备做一次应用更新,手动备份应用,出现了根目录只读. ![](http://i2.51cto.com/images/blog/201808/21/a4c6059ea312c278b7e79b1c96bca0c2.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10

Oracle Rman修复逻辑坏块

RMAN 实现数据块恢复试用Rman可以实现数据块级的数据恢复,在传统恢复手段中即某个数据文件的一个数据块被损坏,就造成整个数据文件无法试用,此时必须通过备份恢复整个数据文件.显然这样的方法会会时间较长,而RMAN实现块级恢复,如果某个数据文件的数据损坏,通过数据文件的完整备份就可以恢复数据块. 案例:数据库是一个单实例ORACLE数据库,该库的总大小有700G.存储设备使用华为存储,备份设备使用希捷3T的移动硬盘.该数据库无DG无OGG.备份策略为每周六0点全库备份,周三0点1级差异备份其余时

Oracle corrupt block(坏块) 详解

转自:http://blog.csdn.net/tianlesoftware/article/details/5024966 一. 坏块说明 1.1 相关链接 在看坏块之前,先看几个相关的链接,在后面的说明中,会用到链接中的一些内容. ORA-600 各个参数含义说明 http://blog.csdn.net/tianlesoftware/article/details/6645809 Oracle 不同故障的恢复方案 http://blog.csdn.net/tianlesoftware/ar

数据库坏块触发ora-00600和ora-07445

上午10:03分收到资源同步库的宕机告警,登陆数据库核实数据库确实异常,第一反应手动重启库,但依旧失败. 回过头查看数据库告警日志,发现大量的600和7445报错 查看trace文件,发现都是对同一个表T_PRODUCT_ADDR_6_8_TEMP_AREA的更新操作: 在连续的报错后,数据库自身有个坏块recover的操作 从在线日志恢复成功后,依然有类似的报错信息,最后数据库直接宕机 [分析过程] 1.根据数据库报错信息中涉及的两个数据文件号信息,在数据库启动到mount状态,通过以下脚本查

如何处理Oracle数据库中的坏块问题

本文主要介绍如何去处理在Oracle数据库中出现坏块的问题,对于坏块产生在不同的对象上,处理的方法会有所不同,本文将大致对这些方法做一些介绍.因为数据库运行时间长了,由于硬件设备的老化,出现坏块的几率会越来越大,因此,做为一个DBA,怎么去解决数据库出现的坏块问题就成了一个重要的议题了. 一:什么是数据库的坏块   首先我们来大概看一下数据库块的格式和结构 数据库的数据块有固定的格式和结构,分三层:cache layer,transaction layer,data layer.在我们对数据块进

对Oracle数据库坏块的理解

1.物理坏块和逻辑坏块 在数据库中有一个概念叫做数据块的一致性,Oracle的数据块的一致性包括了两个层次:物理一致性和逻辑一致性,如果一个数据块在这两个层次上存在不一致性,那就对应到了我们今天要要说的物理坏块和逻辑坏块. 在每一个数据块的头部有一个校验和字段,每当数据块要被写回磁盘前,Oracle都会重新计算 这个数据块的校验和,并记录到这个字段最终写会磁盘.下次数据块被读入内存,Oracle会重新 计算数据块的校验和,并和块头的字段相比较,如果有差异,Oracle就知道这个数据块有错误, 会

Oracle 处理坏块

本文主要介绍如何去处理在Oracle数据库中出现坏块的问题,对于坏块产生在不同的对象上,处理的方法会有所不同,本文将大致对这些方法做一些介绍.因为数据库运行时间长了,由于硬件设备的老化,出现坏块的几率会越来越大,因此,做为一个DBA,怎么去解决数据库出现的坏块问题就成了一个重要的议题了. 什么是数据库的坏块首先我们来大概看一下数据库块的格式和结构 数据库的数据块有固定的格式和结构,分三层:cache layer,transaction layer,data layer.在我们对数据块进行读取写入

无RMAN备份集情况下的坏块恢复

测试的环境是没有可用的RMAN备份集,但是有数据文件的热备,下面来看测试: --创建测试用户和测试表 [[email protected] ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on 16 16:01:02 2014 Copyright (c) 1982, 2005, Oracle.  All rights reserved. Connected to: Oracle Database 10g Ente

12 oracle 数据库坏块--物理坏块-ORA-01578/ORA-01110

oracle 数据库坏块--物理坏块 数据坏块的类型物理坏块:通常是由于硬件损坏如磁盘异常导致.内存有问题.存储链有问题. IO有问题.文件系统有问题. Oracle本身的问题等逻辑坏块:可能都是软件问题导致通常是由于oracle bug导致,比如data block和index block数据不一致第三方软件或者硬件造成的物理损坏物理数据坏块的场景常见的物理坏块(Physical Block Corruptions)有块头和块尾信息不一致(Fractured/Incomplete),check