操作系统时间被修改导致ORA-01075和ORA-00600[2252]

操作系统时间被修改引发数据库ORA-00600内部错误:

ERROR1:

$ sqlplus /nolog

SQL*Plus: Release 11.1.0.7.0 - Production on Fri Mar 10 09:40:55 2000

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

SQL> connect /as sysdba
ERROR:
ORA-01075: you are currently logged on    <<<<此时已经无法连接至数据库

ERROR2:

SQL> connect user/password
ERROR:
ORA-00600: internal error code, arguments: [2252], [3156], [2060352899], [],
[], [], [], [], [], [], [], []

<<<<<ORA-00600[2252]是由于操作系统时间被修改并且跨度太大而引起的,SCN依赖于操作系统的时间,同时内部包含scn_to_timestamp和timestamp_to_scn两个函数用于SCN和时间戳的转换,如果时间跨度太大而导致数据库异常也很好被理解。

将smon后台进程kill掉,重启数据库依然报ORA-00600[2252],查看以下信息:


SQL> select a.FILE#,a.checkpoint_change#,b.CHECKPOINT_CHANGE# from v$datafile a join v$datafile_header b on a.FILE#=b.FILE#;

     FILE#            CHECKPOINT_CHANGE#            CHECKPOINT_CHANGE#
---------- ----------------------------- -----------------------------
         1                13556623902483                13556623902483
         2                13556623902483                13556623902483
         3                13556623902483                13556623902483
         4                13556623902483                13556623902483
         5                13556623902483                13556623902483
         6                13556623902483                13556623902483
         7                13556623902483                13556623902483
         8                13556623902483                13556623902483
         9                13556623902483                13556623902483
        10                13556623902483                13556623902483
        11                13556623902483                13556623902483
        12                13556623902483                13556623902483
        13                13556623902483                13556623902483
        14                13556623902483                13556623902483
        15                13556623902483                13556623902483
        16                13556623902483                13556623902483
        17                13556623902483                13556623902483
        18                13556623902483                13556623902483
        19                13556623902483                13556623902483
        20                13556623902483                13556623902483
        21                13556623902483                13556623902483
        22                13556623902483                13556623902483
        23                13556623902483                13556623902483
        24                13556623902483                13556623902483
        25                13556623902483                13556623902483
        26                13556623902483                13556623902483
        27                13556623902483                13556623902483
        28                13556623902483                13556623902483
        29                13556623902483                13556623902483
        30                13556623902483                13556623902483
        31                13556623902483                13556623902483
        32                13556623902483                13556623902483
        33                13556623902483                13556623902483
        34                13556623902483                13556623902483
        35                13556623902483                13556623902483
        36                13556623902483                13556623902483
        37                13556623902483                13556623902483
        38                13556623902483                13556623902483
        39                13556623902483                13556623902483
        40                13556623902483                13556623902483
        41                13556623902483                13556623902483
        42                13556623902483                13556623902483
        43                13556623902483                13556623902483
        44                13556623902483                13556623902483
        45                13556623902483                13556623902483
        46                13556623902483                13556623902483
        47                13556623902483                13556623902483
        48                13556623902483                13556623902483
        49                13556623902483                13556623902483
        50                13556623902483                13556623902483
        51                13556623902483                13556623902483
        52                13556623902483                13556623902483
        53                13556623902483                13556623902483
        54                13556623902483                13556623902483
        55                13556623902483                13556623902483
        56                13556623902483                13556623902483
        57                13556623902483                13556623902483
        58                13556623902483                13556623902483
        59                13556623902483                13556623902483
        60                13556623902483                13556623902483
        61                13556623902483                13556623902483
        62                13556623902483                13556623902483
        63                13556623902483                13556623902483
        64                13556623902483                13556623902483
        65                13556623902483                13556623902483
        66                13556623902483                13556623902483
        67                13556623902483                13556623902483
        68                13556623902483                13556623902483
        69                13556623902483                13556623902483
        70                13556623902483                13556623902483
        71                13556623902483                13556623902483
        72                13556623902483                13556623902483
        73                13556623902483                13556623902483
        74                13556623902483                13556623902483
        75                13556623902483                13556623902483
        76                13556623902483                13556623902483
        77                13556623902483                13556623902483
        78                13556623902483                13556623902483
        79                13556623902483                13556623902483
        80                13556623902483                13556623902483
        81                13556623902483                13556623902483
        82                13556623902483                13556623902483
        83                13556623902483                13556623902483
        84                13556623902483                13556623902483
        85                13556623902483                13556623902483
        86                13556623902483                13556623902483
        87                13556623902483                13556623902483
        88                13556623902483                13556623902483
        89                13556623902483                13556623902483
        90                13556623902483                13556623902483
        91                13556623902483                13556623902483
        92                13556623902483                13556623902483
        93                13556623902483                13556623902483
        94                13556623902483                13556623902483
        95                13556623902483                13556623902483
        96                13556623902483                13556623902483
        97                13556623902483                13556623902483
        98                13556623902483                13556623902483
        99                13556623902483                13556623902483

99 rows selected.

SQL> select * from v$log;

    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS                     FIRST_CHANGE# FIRST_TIM
---------- ---------- ---------- ---------- ---------- --- ---------------- ----------------------- ---------
         1          1        193 5368709120          1 NO  CURRENT                   13556623783577 09-MAR-15
         4          1        192 5368709120          1 NO  INACTIVE                  13556623778112 09-MAR-15
         3          1        191 5368709120          1 NO  INACTIVE                  13556623772751 09-MAR-15
         2          1        190 5368709120          1 NO  INACTIVE                  13556623763532 09-MAR-15

同时对控制文件做了dump:

***************************************************************************
DATABASE ENTRY
***************************************************************************
 (size = 316, compat size = 316, section max = 1, section in-use = 1,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 1, numrecs = 1)
 01/12/2015 18:49:02
 DB Name "ODSPTDB"
 Database flags = 0x00404000 0x00001000
 Controlfile Creation Timestamp  01/12/2015 18:49:02
 Incmplt recovery scn: 0x0000.00000000
 Resetlogs scn: 0x0000.00000001 Resetlogs Timestamp  01/12/2015 18:49:02
 Prior resetlogs scn: 0x0000.00000000 Prior resetlogs Timestamp  01/01/1988 00:00:00
 Redo Version: compatible=0xb100000
 #Data files = 99, #Online files = 99
 Database checkpoint: Thread=1 scn: 0x0c54.65c08713
 Threads: #Enabled=1, #Open=0, Head=0, Tail=0

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

SQL> select to_number('0c5465c08713','xxxxxxxxxxxxxxxxxxxxxxxxx') abc_scn from dual;

                      ABC_SCN
-----------------------------
               13556623902483

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


***************************************************************************
CHECKPOINT PROGRESS RECORDS
***************************************************************************
 (size = 8180, compat size = 8180, section max = 11, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 2, numrecs = 11)
THREAD #1 - status:0x2 flags:0x0 dirty:3
low cache rba:(0xc1.6b5346.0) on disk rba:(0xc1.6b5349.0)
on disk scn: 0x0c54.65c038f3 03/10/2000 10:16:58
resetlogs scn: 0x0000.00000001 01/12/2015 18:49:02

***************************************************************************
REDO THREAD RECORDS
***************************************************************************
 (size = 256, compat size = 256, section max = 8, section in-use = 1,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 9, numrecs = 8)
THREAD #1 - status:0xe thread links forward:0 back:0
 #logs:4 first:1 last:4 current:1 last used seq#:0xc1
 enabled at scn: 0x0000.00000001 01/12/2015 18:50:33
 disabled at scn: 0x0000.00000000 01/01/1988 00:00:00
 opened at 01/13/2015 09:39:34 by instance odsptdb
Checkpointed at scn:  0x0c54.65c08713 03/10/2000 10:16:58
 thread:1 rba:(0xc1.6b5349.10)
***************************************************************************
LOG FILE RECORDS
***************************************************************************
 (size = 72, compat size = 72, section max = 16, section in-use = 4,
  last-recid= 4, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 10, numrecs = 16)
LOG FILE #1:
  (name #1) /oradata/odsptdb/odsptdb/redo01.log
 Thread 1 redo log links: forward: 2 backward: 0
 siz: 0xa00000 seq: 0x000000c1 hws: 0x2 bsz: 512 nab: 0x6b5349 flg: 0xa dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0c54.65bea140
 Low scn: 0x0c54.65beb699 03/09/2015 21:08:01
 Next scn: 0xffff.ffffffff 01/01/1988 00:00:00

<<<<<<<<<<<<<
databasescn: 0x0c54.65c08713  <<<< 控制文件的SCN
on disk scn:   0x0c54.65c038f3   <<<<  实例恢复的目标SCN,却明显小于控制文件的SCN
redo low scn: 0x0c54.65beb699
<<<<<<<<<<<<<

鉴于控制文件里的SCN和数据文件头部SCN都一致,所以尝试resetlogs方式打开数据库

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01139: RESETLOGS option only valid after an incomplete database recovery


SQL> recover database until cancel;
Media recovery complete.
SQL> alter database open ;        
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open


SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [2252], [3156], [1707116310], [], [], [], [], [], [], [], [], []

SQL> select a.FILE#,a.checkpoint_change#,b.CHECKPOINT_CHANGE# from v$datafile a join v$datafile_header b on a.FILE#=b.FILE#;

     FILE#            CHECKPOINT_CHANGE#            CHECKPOINT_CHANGE#
---------- ----------------------------- -----------------------------
         1                13556623902484                13556623902484
         2                13556623902484                13556623902484
         3                13556623902484                13556623902484
         4                13556623902484                13556623902484
         5                13556623902484                13556623902484
         6                13556623902484                13556623902484
         7                13556623902484                13556623902484
         8                13556623902484                13556623902484
         9                13556623902484                13556623902484
        10                13556623902484                13556623902484
        11                13556623902484                13556623902484
        12                13556623902484                13556623902484
        13                13556623902484                13556623902484
        14                13556623902484                13556623902484
        15                13556623902484                13556623902484
        16                13556623902484                13556623902484
        17                13556623902484                13556623902484
        18                13556623902484                13556623902484
        19                13556623902484                13556623902484
        20                13556623902484                13556623902484
        21                13556623902484                13556623902484
        22                13556623902484                13556623902484
        23                13556623902484                13556623902484
        24                13556623902484                13556623902484
        25                13556623902484                13556623902484
        26                13556623902484                13556623902484
        27                13556623902484                13556623902484
        28                13556623902484                13556623902484
        29                13556623902484                13556623902484
        30                13556623902484                13556623902484
        31                13556623902484                13556623902484
        32                13556623902484                13556623902484
        33                13556623902484                13556623902484
        34                13556623902484                13556623902484
        35                13556623902484                13556623902484
        36                13556623902484                13556623902484
        37                13556623902484                13556623902484
        38                13556623902484                13556623902484
        39                13556623902484                13556623902484
        40                13556623902484                13556623902484
        41                13556623902484                13556623902484
        42                13556623902484                13556623902484
        43                13556623902484                13556623902484
        44                13556623902484                13556623902484
        45                13556623902484                13556623902484
        46                13556623902484                13556623902484
        47                13556623902484                13556623902484
        48                13556623902484                13556623902484
        49                13556623902484                13556623902484
        50                13556623902484                13556623902484
        51                13556623902484                13556623902484
        52                13556623902484                13556623902484
        53                13556623902484                13556623902484
        54                13556623902484                13556623902484
        55                13556623902484                13556623902484
        56                13556623902484                13556623902484
        57                13556623902484                13556623902484
        58                13556623902484                13556623902484
        59                13556623902484                13556623902484
        60                13556623902484                13556623902484
        61                13556623902484                13556623902484
        62                13556623902484                13556623902484
        63                13556623902484                13556623902484
        64                13556623902484                13556623902484
        65                13556623902484                13556623902484
        66                13556623902484                13556623902484
        67                13556623902484                13556623902484
        68                13556623902484                13556623902484
        69                13556623902484                13556623902484
        70                13556623902484                13556623902484
        71                13556623902484                13556623902484
        72                13556623902484                13556623902484
        73                13556623902484                13556623902484
        74                13556623902484                13556623902484
        75                13556623902484                13556623902484
        76                13556623902484                13556623902484
        77                13556623902484                13556623902484
        78                13556623902484                13556623902484
        79                13556623902484                13556623902484
        80                13556623902484                13556623902484
        81                13556623902484                13556623902484
        82                13556623902484                13556623902484
        83                13556623902484                13556623902484
        84                13556623902484                13556623902484
        85                13556623902484                13556623902484
        86                13556623902484                13556623902484
        87                13556623902484                13556623902484
        88                13556623902484                13556623902484
        89                13556623902484                13556623902484
        90                13556623902484                13556623902484
        91                13556623902484                13556623902484
        92                13556623902484                13556623902484
        93                13556623902484                13556623902484
        94                13556623902484                13556623902484
        95                13556623902484                13556623902484
        96                13556623902484                13556623902484
        97                13556623902484                13556623902484
        98                13556623902484                13556623902484
        99                13556623902484                13556623902484

99 rows selected.

SQL> select * from v$log;

    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS                     FIRST_CHANGE# FIRST_TIM
---------- ---------- ---------- ---------- ---------- --- ---------------- ----------------------- ---------
         1          1          1 5368709120          1 NO  CURRENT                   13556623902484 10-MAR-00      <<<<<<<<<<<<<注意这里的时间是2000年!!
         4          1          0 5368709120          1 YES UNUSED                                 0
         3          1          0 5368709120          1 YES UNUSED                                 0
         2          1          0 5368709120          1 YES UNUSED                                 0

这个时间按理应该能够顺利将数据库打开的...此时注意到以上的时间年份为2000年

 

SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

TO_CHAR(SYSDATE,'YY
-------------------
2000-03-10 11:42:22

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
$ date
Fri Mar 10 11:42:25 CST 2000

时间跨度整整15年...此时将时间改为2015年,数据库就能顺利打开.

 

后来了解到他们调整时间的原因是:操作系统使用了"夏令时"时区,前几天发现时间提前了1小时,修改时间的命令格式不正确,将时间误调整为2000年.

反观整个恢复过程,其实可以先通过还原操作系统时间而避开一系列繁琐的操作,其实当自己发现在线日志的SCN小于控制文件的SCN时,曾想过增进SCN来解决,但发现控制文件和数据文件头部的SCN一致,所以才想通过RESETLOGS方式去启库。另外要提醒大家,避免使用夏令时时区,以免时间自动发生变化而引起不必要的麻烦.

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

道行尚浅,欢迎拍砖。

转载请注明出处.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java.sql.SQLException: ORA-00600是一种Oracle数据库的内部错误,表示数据库管理系统遇到了一个未处理的异常状况。这种错误通常是由于软件错误、数据库损坏或操作系统问题引起的。ORA-00600错误是Oracle自动收集的错误,并被记录在数据库的错误日志文件中。 ORA-00600错误的解决方法通常是联系Oracle支持团队,以获取专业的帮助和支持。这些专家可以研究错误日志文件,并根据其中的信息来提供具体的解决方案。他们可能会要求提供详细的错误描述、错误日志文件的副本以及可能的重现步骤,以便更好地了解问题。 此外,有一些常见的解决方法可以尝试,如重新启动数据库实例、使用Oracle提供的修复程序或打补丁、检查数据库的一致性和完整性、恢复备份等。然而,这些方法都需要在与Oracle支持团队的沟通和指导下进行,以确保正确性和有效性。 总之,ORA-00600错误是一种内部错误,通常需要通过联系Oracle支持团队来解决。及时记录错误信息、提供相关文件以及与专家合作,可以有效地诊断和解决这个问题,确保数据库的稳定性和可靠性。 ### 回答2: ORA-00600是Oracle数据库中的一种错误代码,通常表示出现了内部错误。这种错误是由于数据库在执行某个操作时发现了一些与其内部逻辑不符的情况导致的。 有几种可能的原因会引发ORA-00600错误,包括: 1. 数据库软件中的一个或多个bug。 2. 用户执行了一些非法操作或使用了不符合规范的语法。 3. 数据库实例配置不正确或损坏。 4. 物理数据库文件损坏或不一致。 解决ORA-00600错误的方法通常是: 1. 查找并应用相关的Oracle补丁程序。Oracle官方经常发布相关的补丁程序,以修复已知的bug。 2. 更新Oracle数据库软件版本。如果该错误是由于已知的bug引起的,升级到一个已修复该问题的版本可能会解决该问题。 3. 检查和修复数据库实例的配置问题。确保数据库参数设置正确且不冲突,并根据需要进行更改。 4. 运行Oracle提供的诊断工具,如ORA-600和ORA-7445错误报告工具,获得更多关于错误的详细信息和建议的解决方案。 5. 恢复损坏的数据库文件。如果数据文件损坏导致ORA-00600错误,可以尝试使用Oracle提供的工具来修复或恢复这些文件。 总之,ORA-00600错误通常是由于Oracle数据库内部的问题引起的。解决该错误的方法可能因情况而异,但可以尝试应用补丁、更新软件版本、检查配置并修复损坏的文件等来解决该问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值