简单记录一次ORA-00600 kcratr_nab_less_than_odr
当前具体报错已经没有了,仅仅有对应图。參考EYGLE一篇文章中数据:
1.故障现象
数据库版本号11G,错误类似下面:
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr]错误。详细的错误信息类似:
Incident 63078 created, dump file: /u01/diag/rdbms/orcl/orcl/incident/incdir_63078/orcl_ora_1916_i63078.trc
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [3313], [2328320], [2334233], [], [], [], [], [], [], []
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [3313], [2328320], [2334233], [], [], [], [], [], [], []
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [3313], [2328320], [2334233], [], [], [], [], [], [], []
ALERT日志中有下面:
Thread 1 checkpoint: logseq 3313, block 2, scn 5965899084787
cache-low rba: logseq 3313, block 1484161
on-disk rba: logseq 3313, block 2334233, scn 5965899135009
start recovery at logseq 3313, block 1484161, scn 0
600错误中的1。3313的含义。是Thread 1 logseq 3313,那么剩下的就应该是恢复时的rba地址,错误提示中的2334233是On-Disk Rba,是恢复应该到达的终点,而2328320小于On-Disk Rba。就应该是Less Than里面提到的恢复的终点,由于没有到达Redo的最后位置,被觉得是非法的,可能丢失数据。
TRACE文件里会有对应的提示:
WARNING! Crash recovery of thread 1 seq 3313 is
ending at redo block 2328320 but should not have ended before
redo block 2334233
我遇到的问题当时仅仅有图片例如以下
原因可能是由于实例恢复的进度不够(由于Redo丢失或者硬件故障导致的REDO不完整--坏块)。
这一点能够从当时报错的TRACE文件的图片中得到验证。
从图中能够看到,须要最少恢复到的ON DISK RBA是block24955,而当前能恢复到的是24957,有部分块丢失,因此报错。
2.故障解决:
首先尝试通过RECOVER DATABASE; RECOVERDATABASEUNTIL CANCEL;等方式进行恢复,可是未解决此问题。
终于通过重建控制文件、再进行不全然恢复来OPEN数据库。
(前提是客户仅仅要求OPEN库,是客户的測试库,丢些数据没关系。假设是生产库不同意丢数据,此方法就不适用了)
使用命令类似下面:
MOUNT状态下: ALTERDATABASEBACKUP CONTROLFILE TOTRACE AS'/home/oracle/a.txt';
使用备份的控制文件里内容,在SQLPLUS窗体运行类似下面:
CREATECONTROLFILE REUSE DATABASE…………
Alter database recover database until cancel using backup controlfile;
Alter database open resetlogs;
并新建暂时表空间。
參考链接:http://www.xifenfei.com/2347.html http://www.eygle.com/archives/2010/05/kcratr_nab_less_than_odr.html
简单记录一次ORA-00600 kcratr_nab_less_than_odr的更多相关文章
- JSP简单记录
JSP,全称是Java Server Page,是运行在服务器端的页面,是建立在Servlet规范的动态网页技术,JSP文件在第一次请求时,会被编译成Servlet,所以JSP也可以看成是运行中的Se ...
- OpenCV安装配置的简单记录
在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...
- asp.net 简单记录请求的客户端和服务端 处理时间
最近项目需要简单记录一下 ajax客户端和服务端处理时间,服务端时间的思路是借用BeginRequest和EndRequest事件,为了不影响现有接口返回的数据格式,因此服务处理时间放在respons ...
- PHP 版本简单记录
PHP 版本简单记录 PHP 博物馆 http://museum.php.net/php5/ PHP 版本发布 https://secure.php.net/release ...
- 简单记录一次注入到shell
0x00 前言 帮朋友之前拿的一个站,有点久了没有完整截图,简单记录一下. 0x01 基础信息 操作系统:win 集成环境:phpstudy 端口开放:82,3306,3389 有phpmyadmin ...
- oracle SCN推进恢复数据库 简单记录
由于是在内网专用机器上操作,没有日志记录,下面做个简单记录: 前几天某供电局的的一个老数据库存储挂了,数据全部丢失,该库没有开归档,没接备份,怎么恢复? 由于存储损坏严重,从存储恢复不好搞. 好在 ...
- [git] github 使用简单记录
前提 :1. 已有 github 账号.2. 已安装 git .3. 在 github 和 本地 git 客户端交互秘钥.(这步我记得需要做,有点久远,不确定.) 正文: 下面是一个简单的例子.先在 ...
- Linux中java项目环境部署,简单记录一下
这里只是简单的记录一下linux环境下面如何快速的搭配好环境,使你的项目能在linux环境上面运行. 很多时候,我们都是用windows环境进行配置调试的,而真正很多服务器都是在linux服务器上面的 ...
- Android查看联系人简单记录
简单实现打印联系人信息,可以作为插入联系人的基础和主要代码块,作为个人记录的小逻辑 package com.lgqrlchinese.contactstest; import android.Mani ...
随机推荐
- HDU 4655 Cut Pieces(2013多校6 1001题 简单数学题)
Cut Pieces Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total ...
- c语言下的变量类型及计算
源码 补码 反码 机器数:一个数在计算机中的二进制表示形式, 叫做这个数的机器数.机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1. 真值:第一位是符号位,将带符号位的 ...
- jQuery:validate添加自定义验证
jQuery.validator.addMethod添加自定义的验证规则 addMethod:name, method, message 简单实例:单个验证的添加 <!DOCTYPE html ...
- ASP.NET Core管道深度剖析
ASP.NET管道 以IIS 6.0为例,在工作进程w3wp.exe中,利用Aspnet_ispai.dll加载.NET运行时(如果.NET运行时尚未加载).IIS 6引入了应用程序池的概念,一个工作 ...
- 通过logstash收集mysql慢查询日志转换为json
input { file { type => "mysql-slow" path => "/var/log/slow_mysqld.log" sta ...
- Dr.memory
Run Dr.memory on visual c++ 2013 Title: Dr. Memory Command: C:\Program Files (x86)\Dr. Memory\bin\dr ...
- SQL中inner join,outer join和cross join的区别
使用join连表,缺陷的情况下是inner join,开发中使用的left join和right join属于outer join,outer join还包括full join 现有两张表,Table ...
- 【Linux】shell判断mysql端口是否启用?
#!/bin/bash set -eux mysqld >& & CONNECTED=$(netstat -alnt | grep -c ":3306 ") ...
- 【Web】前台传送JSON格式数据到后台Shell处理
1.js中的json对象和字符串之间的转化:http://www.oschina.net/code/snippet_175925_6288 代码片段: var obj = JSON.parse(des ...
- 关于windows下自带的forfile批量删除文件bat命令
最近在开发的过程中,为了节省资源,需要用到windows下批量删除文件的批处理命令,也就是bat 主要内容: forfiles /p "E:\pictures" /m * /d - ...