ORA-00600-[kcratr_nab_less_than_odr]问题小记

2018年03月12日 20:56:57 我不是VIP 阅读数 1500
 
https://blog.csdn.net/u010343795/article/details/79532799

协助同事解决了一个演示环境的问题 用的这个网页

感觉作者写的挺好的 

记得最开始盖国强里的书 还写过 这个东西如何处理.  kernel 的error code 的含义 

感觉oracle的东西也太多了.. 搞不太明白. 
 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010343795/article/details/79532799

上午一实施哥们来求救说一个做ETL的数据库无法启动了,出现了ORA-00600的错误。之前也遇到过几次ORA-00600内部错误的问题,几次都是因为数据库服务器异常断电导致的,这类错误一般是oracle自己内部的bug。下面记录下解决的过程:

1、先将数据库启动到mount状态,没有问题,说明数据库成功的打开控制文件。

SQL> startup mount
ORACLE instance started.

Total System Global Area  bytes
Fixed Size           bytes
Variable Size         bytes
Database Buffers      bytes
Redo Buffers            bytes
Database mounted.

2、尝试open数据库,此时主要会读取数据文件、redo日志等。

SQL> alter database open;
alter database open
*
ERROR at line :
ORA-: ],
[], [], [], [], [], [], [], [], [], []

此时提示了ORA-00600: internal error code错误信息,这类错误一般是oracle自己内部的bug,在12C之后就没有了。此类信息的重点在arguments之后,但是一般也没有很具体的信息,此时我们可以在trace目录查看alert日志,若信息还不够明确,再根据alter log中相应的trc文件获取具体信息。 
之前也遇到过类似的情况,看到arguments: [kcratr_nab_less_than_odr]也就明白了原因——服务器异常断电,导致LGWR写联机日志文件时失败,由于数据库异常停机,所以启动的时候需要做实例级恢复,因为写联机日志失败所以无法从中获取这些redo信息。说说ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1],[4252], [17024], [17032]的意思:1号线程实例需要恢复日志序列号为4252的联机日志文件,需要恢复到编号为17032的日志块,而实际上只能恢复到第17024个日志块。 
3、下面看看怎么解决。查看当前日志文件信息:

SQL> select group#,sequence#,status,first_time,next_change# from v$log;

    GROUP#  SEQUENCE# STATUS           FIRST_TIM NEXT_CHANGE#
---------- ---------- ---------------- --------- ------------
         CURRENT          -MAR-   2.8147E+14
         INACTIVE         -MAR-   4.9009E+12
         INACTIVE         -MAR-   4.9009E+12

当前日志组组号为1,再通过v$logfile查看组号为1的redo日志的文件位置

SQL> select * from v$logfile;

    GROUP# STATUS  TYPE    MEMBER
---------- ------- ------- ------------------------------
                  ONLINE  /home/wonders/app/wonders/oradata/orcl/redo01.log
                  ONLINE  /home/wonders/app/wonders/oradata/orcl/redo03.log
                  ONLINE  /home/wonders/app/wonders/oradata/orcl/redo02.log    

指定redo1.log恢复数据库

SQL> recover database until cancel using backup controlfile;
ORA-: change  generated at // :: needed for
thread
ORA-: suggestion :
/home/wonders/app/wonders/flash_recovery_area/ORCL/archivelog/2018_03_12/o1_mf_1
_4252_%u_.arc
ORA-: change   

Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/home/wonders/app/wonders/oradata/orcl/redo01.log
Log applied.
Media recovery complete.

恢复完成后必须以RESETLOGS方式打开数据库

SQL> alter database open resetlogs;

Database altered.

[转帖]ORA-00600-[kcratr_nab_less_than_odr]问题小记的更多相关文章

  1. [转帖]oracle 00600 4194 4193 问题的处理

    oracle断电重启之ORA-00600[4194] https://www.cnblogs.com/xwdreamer/p/3778383.html 部门的机器出现异常 断电导致的 错误 从网上学了 ...

  2. [Oracle]ORA-600[kdBlkCheckError]LOB坏块处理

    [Oracle]ORA-600[kdBlkCheckError]LOB坏块处理 客户环境报如下错误: ORA - 00600: Internal error code, arguments: [kdB ...

  3. [Oracle]如何获得出现故障时,客户端的详细连接信息

    [Oracle]如何获得出现故障时,客户端的详细连接信息 客户坚持说 只是在 每天早上5点才运行下面的语句: select / * + FULL (TAB001_TT01) * / 'TAB001_T ...

  4. [转帖] SQLNET.ORA的处理.

    被一个客户端连接远程数据库阻塞超时的问题困扰了好久,最后终于找到了答案  https://blog.csdn.net/herobox/article/details/16985097   Oracle ...

  5. [转帖]sqlnet.ora常用参数

    sqlnet.ora常用参数 注﹕在修改sqlnet.ora文件之后重新启动监听﹐修改才能生效﹗﹗﹗ oracle网络设置主要包括三个文件,sqlnet.ora\ lisnter.ora\ tnsna ...

  6. [转帖]「日常小记」linux中强大且常用命令:find、grep

    「日常小记」linux中强大且常用命令:find.grep https://zhuanlan.zhihu.com/p/74379265 在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍 ...

  7. [转帖]Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户

    Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户 原创 Oracle 作者:maohaiqing0304 时间:2016-05-03 17:05:46  17 ...

  8. [ZZ] [精彩盘点] TesterHome 社区 2018年 度精华帖

    原文地址: https://testerhome.com/topics/17646 相逢即是缘分,总有一篇适合您! 感觉好的请点赞收藏 ,感觉分类不严谨的,欢迎反馈给我! 测试方法&测试管理 ...

  9. oracle instant client,tnsping,tnsnames.ora和ORACLE_HOME

    前段时间要远程连接oracle数据库,可是又不想在自己电脑上完整安装oracleclient,于是到oracle官网下载了轻量级clientinstant client. 这玩意没有图形界面,全靠sq ...

随机推荐

  1. Word:高亮显示文档中的所有英文字符

     造冰箱的大熊猫,本文适用于Microsoft Office 2007@cnblogs 2019/4/2 文中图片可通过点击鼠标右键查看大图 1.场景 某天在阅读一个中英文混编的Word文档时,希望将 ...

  2. [sdoi 2010][bzoj 1925]地精部落(神仙dp)

    Description 传说很久以前,大地上居住着一种神秘的生物:地精. 地精喜欢住在连绵不绝的山脉中.具体地说,一座长度为 N 的山脉 H可分 为从左到右的 N 段,每段有一个独一无二的高度 Hi, ...

  3. Redis配置文件中bind参数

    前言 我们都知道,redis 的配置文件中,默认绑定接口是 127.0.0.1,也就是本地回环接口,所以是无法从外网连接 redis 服务的.如果想要让外网也能连接使用服务器上的 redis 服务,可 ...

  4. 灰度图像--图像分割 Sobel算子,Prewitt算子和Scharr算子平滑能力比较

    学习DIP第47天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发: https://g ...

  5. centos后台运行python程序

    在服务器上,为了退出终端,程序依然能够运行,需要设置程序在后台运行. 关键的命令:nohup *基本用法:进入要运行的py文件目录前 nohup python  -u test.py > tes ...

  6. orale数据库的SQL查询

      创建学生表,成绩表,教师表,课程表,分别添加数据信息 create table student( sno ) primary key, sname ), sage ), ssex ) ); cre ...

  7. 代码审计之CVE-2019-9081 Laravel5.7 反序列化 RCE复现分析

    本文首发于先知社区:https://xz.aliyun.com/t/5510 环境: php7.2+apache+laravel5.7 漏洞描述: Laravel Framework是Taylor O ...

  8. bootstrap-table前端实现多条件时间段查询数据

    实现思路:通过正则匹配到字段是否符合条件,时间段转换为时间戳比对. 这是大体的效果图: 页面的html代码 <div class="content-head mgb10"&g ...

  9. Angular5.0之 安装指定版本Angular CLI

    我们可能会发现按照网上的方式下载安装后,使用Angular CLI生成的项目并不是我们想要的Angular的版本,因为在我们没有指定安装版本的前提下,默认会下载最新的版本安装,然而不同的Angular ...

  10. Ubuntu——关于以root权限操作和启用root账户的讨论

    概括性的说,在Ubuntu下面,推荐用户加入到sudo之后,使用命令: sudo -i 来以管理员权限进行操作. 而不推荐用户直接登录root用户. 具体内参考:https://help.ubuntu ...