http://blog.itpub.net/30430420/viewspace-1799925/

=============================

现象!!!!!!!!!!!!!!!!!
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 3373858816 bytes
Fixed Size                  2180424 bytes
Variable Size            2415921848 bytes
Database Buffers          939524096 bytes
Redo Buffers               16232448 bytes
数据库装载完毕。
ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724],[43805], [43810], [], [], [], [], [], [], []

[1], [4724],[43805], [43810]
线程1,实例需要恢复日志序列号为4724的联机日志文件,需要恢复到编号为43810的日志块,而实际上只能恢复到第43805个日志块,所以库就启不来了

这可能是由于控制文件的缺失,或者在线日志文件在实例恢复时不完整

查看告警日志:
less alert_orcldata.log

Completed: ALTER DATABASE   MOUNT
Sun Feb 25 14:49:04 2018
ALTER DATABASE OPEN
Beginning crash recovery of 1 threads
 parallel recovery started with 3 processes
Started redo scan
Completed redo scan
 read 312 KB redo, 55 data blocks need recovery

Errors in file f:\app\asus\diag\rdbms\orcldata\orcldata\trace\orcldata_ora_2896.trc  (incident=465222):
ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724], [43805], [43810], [], [], [], [], [], [], []
Incident details in: f:\app\asus\diag\rdbms\orcldata\orcldata\incident\incdir_465222\orcldata_ora_2896_i465222.trc
Aborting crash recovery due to error 600

Errors in file f:\app\asus\diag\rdbms\orcldata\orcldata\trace\orcldata_ora_2896.trc:
ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724], [43805], [43810], [], [], [], [], [], [], []

Errors in file f:\app\asus\diag\rdbms\orcldata\orcldata\trace\orcldata_ora_2896.trc:
ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724], [43805], [43810], [], [], [], [], [], [], []

ORA-600 signalled during: ALTER DATABASE OPEN...
Trace dumping is performing id=[cdmp_20180225144908]
Sun Feb 25 14:50:04 2018
Sweep [inc][465222]: completed
Sweep [inc2][465222]: completed

查看相应的trace文件:
less orcldata_ora_2896.trc

Trace file f:\app\asus\diag\rdbms\orcldata\orcldata\trace\orcldata_ora_2896.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Windows NT Version V6.1 Service Pack 1
CPU                 : 4 - type 8664, 4 Physical Cores
Process Affinity    : 0x0x0000000000000000
Memory (Avail/Total): Ph:1599M/8062M, Ph+PgF:6927M/16124M
Instance name: orcldata
Redo thread mounted by this instance: 1
Oracle process number: 20
Windows thread id: 2896, image: ORACLE.EXE (SHAD)

*** 2018-02-25 14:49:05.149
*** SESSION ID:(5.3) 2018-02-25 14:49:05.149
*** CLIENT ID:() 2018-02-25 14:49:05.149
*** SERVICE NAME:() 2018-02-25 14:49:05.149
*** MODULE NAME:(sqlplus.exe) 2018-02-25 14:49:05.149
*** ACTION NAME:() 2018-02-25 14:49:05.149
 
Successfully allocated 3 recovery slaves
Using 45 overflow buffers per recovery slave
Thread 1 checkpoint: logseq 4724, block 2, scn 144933326
  cache-low rba: logseq 4724, block 43181
    on-disk rba: logseq 4724, block 43810, scn 144958360
  start recovery at logseq 4724, block 43181, scn 0

*** 2018-02-25 14:49:05.307
Started writing zeroblks thread 1 seq 4724 blocks 43805-43812

*** 2018-02-25 14:49:05.308
Completed writing zeroblks thread 1 seq 4724

*** 2018-02-25 14:49:05.492
==== Redo read statistics for thread 1 ====
Total physical reads (from disk and memory): 4096Kb
-- Redo read_disk statistics --
Read rate (ASYNC): 312Kb in 0.30s => 1.02 Mb/sec
Longest record: 6Kb, moves: 0/595 (0%)
Change moves: 1/73 (1%), moved: 0Mb
Longest LWN: 6Kb, moves: 0/238 (0%), moved: 0Mb
Last redo scn: 0x0000.08a3e393 (144958355)
----------------------------------------------
----- Recovery Hash Table Statistics ---------
Hash table buckets = 32768
Longest hash chain = 1
Average hash chain = 55/55 = 1.0
Max compares per lookup = 1
Avg compares per lookup = 1514/1663 = 0.9
----------------------------------------------
WARNING! Crash recovery of thread 1 seq 4724 is
ending at redo block 43805 but should not have ended before
redo block 43810

*** 2018-02-25 14:49:06.969
Incident 465222 created, dump file: f:\app\asus\diag\rdbms\orcldata\orcldata\incident\incdir_465222\orcldata_ora_2896_i465222.trc
ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724], [43805], [43810], [], [], [], [], [], [], []

ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724], [43805], [43810], [], [], [], [], [], [], []
ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [4724], [43805], [43810], [], [], [], [], [], [], []

应该是由于我强制关闭电脑,导致LGWR写联机日志文件时失败,下次重新启动数据库时,需要做实例级恢复,而又无法从联机日志文件里获取到这些redo信息,因为上次关闭时,写日志失败了。

===================================

http://blog.itpub.net/28883355/viewspace-1080879/
oradebug help
SETMYPID Debug current process
===================================

http://blog.csdn.net/haibusuanyun/article/details/36868269
方法1:这个方法不行
RECOVER DATABASE;
RECOVER DATABASE UNTIL CANCEL;

方法2:最终通过重建控制文件、再进行不完全恢复来OPEN数据库。(前提是客户只要求OPEN库,是客户的测试库,丢些数据没关系,如果是生产库不允许丢数据,此方法就不适用了)
ALTER DATABASE BACKUP CONTROLFILE TO TRACE AS'/home/oracle/a.txt';
Alter database recover database until cancel using backup controlfile;
Alter database open resetlogs;

===================================
下面这个方法有效
http://blog.itpub.net/30430420/viewspace-1799925/
Show parameter control_files;
oradebug setmypid;
Alter session set tracefile_identifier='controlfilerecreate';
Alter database backup controlfile to trace noresetlogs;
oradebug tracefile_name;
shutdown immediate;
startup nomount;
执行trace文件中的创建数据库脚本,orcldata_ora_2896_controlfilerecreate.trc

=====================================

最后验证一下相关表的数据

select uat.table_name from user_all_tables uat;
select object_name, created,last_ddl_time from user_objects;

SELECT
    uat.table_name AS 表名,
    (
        SELECT
            last_ddl_time
        FROM
            user_objects
        WHERE
            object_name = uat.table_name
    ) AS 最后修改日期
FROM
    user_all_tables uat;

==========================================================

windows启动dbconsole

C:\Windows\System32\drivers\etc\hosts修改这个文件添加主机名的解析
否则只能本地访问EM

F:\app\ASUS\product\11.2.0\dbhome_1\BIN>emctl start dbconsole
OC4J Configuration issue. F:\app\ASUS\product\11.2.0\dbhome_1/oc4j/j2ee/OC4J_DBConsole_ASUS-PC_orcldata not found.

复制该目录下的“OC4J_DBConsole_localhost_orcl”文件夹放在同一目录下,且把名称改成“OC4J_DBConsole_ASUS-PC_orcldata”。

F:\app\ASUS\product\11.2.0\dbhome_1\BIN>emctl start dbconsole
EM Configuration issue. F:\app\ASUS\product\11.2.0\dbhome_1/ASUS-PC_orcldata not found.

复制该目录下的“localhost_orcl”文件夹放在同一目录下,且把名称改成“ASUS-PC_orcldata”。

==========================================

windows登录EM问题

1、问题描述:
打开OEM页面发现这个错误:界面如下
ORA-28001: the password has expired (DBD ERROR: OCISessionBegin)

2问题原因
造成这个问题的主要原因是因为DBSNMP 、SYSMAN用户密码已经过期。

3解决办法
可以使用sys以管理员的身份登录数据库,然后执行select username,account_status from dba_users;语句查询用户状态,可以发现有如下两句:

DBSNMP EXPIRED
SYSMAN EXPIRED

把这俩用户、密码修改了就行。

本机使用sqlplus登陆

sqlplus / as sysdba

SQL> alter user sysman identified by sys123;

用户已更改。

SQL> alter user dbsnmp identified by sys123;

用户已更改。

重启em dbconsole 登陆

================================

三步走,重新创建EM

emctl stop dbconsole

emca -repos recreate

emca -config dbcontrol db

oracle错误汇总2的更多相关文章

  1. oracle错误汇总1

    这是遇见的第一个整个库正常,但某张表查询报错的情况 某张表数据可以查,但一排序查就报错 select * from acct_daily_bak; select * from acct_daily_b ...

  2. oracle错误汇总解决

    1.ORA-12514 http://blog.sina.com.cn/s/blog_5007d1b10100oqo8.html

  3. Oracle 异常处理汇总

    Oracle 异常处理汇总 1.plsql无法连接 安装oracle,中间录入密码,用户是:sys,pass: 录入的密码. 连接数据库,建议创建新的用户,最好别直接用sys 安装完毕,则需要配置Ne ...

  4. 64位 SQL Server2008链接访问Oracle 过程汇总解决方法记录

    64位 SQL Server2008链接访问Oracle 过程汇总解决方法记录 经过几天不停的网上找资料,实验,终于联通了. 环境:系统:win 2008 ,SqlServer2008 R2, 连接O ...

  5. Oracle异常汇总

    持续更新中,可参见https://hnuhell.gitbooks.io/oracle_errmg/content/或https://hnuhell.github.io/Oracle_ERRMG/上的 ...

  6. Entity Framework学习笔记——错误汇总

    之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇 ...

  7. (转)对Oracle导出文件错误和DMP文件结构的分析,EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier

    EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier 原因:oracle版本不一样 执行 C:/ ...

  8. Oracle错误:ORA-01033

    Oracle错误:ORA-01033 错误编码:ORA-01033: ORACLE initialization or shutdown in progress 故障描述:因为移动了数据库文件([NA ...

  9. 李洪强iOS开发之OC常见错误汇总

    // //  main.m //  16 - 常见错误汇总 // //  Created by vic fan on 16/7/13. //  Copyright © 2016年 李洪强. All r ...

随机推荐

  1. Oracle分析函数及常用函数: over(),rank()over()作用及用法--分区(分组)求和& 不连续/连续排名

    (1)   函数:  over()的作用及用法:    -- 分区(分组)求和. sum() over( partition by column1 order by column2 )主要用来对某个字 ...

  2. Java 优化要点

    java优化四个要素:1.-server服务器方式启动2.-Xms1g -Xmx1g初始大小与最大大小保持一致 -Xss256k线程栈从默认128扩到256  3.-Xmn512m新生代内存:年老代内 ...

  3. 干货 | SSMS客户端连接京东云RDS SQL Server配置方法

    干货 | SSMS客户端连接京东云RDS SQL Server配置方法 原创: 于振江 京东云开发者社区  微软SQL Server, Oracle数据库以及MySQL系列占据了关系型数据库市场的绝对 ...

  4. if else 和if elif else的区别

    def fuck(a): if a ==1: print(a) if a ==2: print("not good") else: print("tamade" ...

  5. linux 清理几天前的日志或文件

    执行清理1天前的 war 包 find . -ctime +1 -name "*.war" -exec rm {} \;

  6. webservice和dubbo区别

    webservice  不需要搭建注册中心,是一个服务框架,主要内容有soap协议,uuid注册中心,wsdl文件. dubbo   需要搭建注册中心,可以是zookeeper,redis.它是一个分 ...

  7. 初涉FlaskWeb开发----基础篇

    1.web程序运行的基本流程 {客户端发送请求 <-----> 服务器返回响应} 2.使用框架可以降低开发难度,提高开发效率. 3.Flask框架的基本认识: 特点:用Python语言实现 ...

  8. Hadoop集群启动

    1.初始化集群 要启动Hadoop集群,需要启动HDFS和YARN两个集群 注意:首次启动HDFS时,必须对其进行格式化操作.本质上是一些清理和准备工作, 因为此时的HDFS在物理上还是不存在的 命令 ...

  9. React native 中使用Fetch请求数据

    一.代码 import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View } from ' ...

  10. python 列表、元组

    列表 List(列表) 是 Python 中使用最频繁的数据类型. 列表可以完成大多数集合类的数据结构实现.它支持字符,数字,字符串甚至可以包含列表(即嵌套). 列表用 [ ] 标识,是 python ...