找回密码
 立即注册
首页 业界区 业界 Patch_SCN快速解决ORA-600 2663故障

Patch_SCN快速解决ORA-600 2663故障

撇瞥 2026-1-17 08:20:00
一个维保客户和我说他们测试库删除了日志文件导致库无法启动,让我帮忙看看
客户现场现况
1. 磁盘空间使用100%
   
  [oracle@We1-db_Test ~]$ df -h Filesystem      Size  Used Avail Use% Mounted on devtmpfs        3.9G     0  3.9G   0% /dev tmpfs           3.9G     0  3.9G   0% /dev/shm tmpfs           3.9G  880K  3.9G   1% /run tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup /dev/vda1        40G   38G   92M 100% / tmpfs           783M     0  783M   0% /run/user/0   
     2. 数据库redo被删除了部分,而且是active状态的被删除
   
  [oracle@We1-db_Test ~]$ ls -l /opt/app/oracle/oradata/orcl/redo0* -rw-r----- 1 oracle oinstall 52429312 Jan 15 15:29 /opt/app/oracle/oradata/orcl/redo04.log -rw-r----- 1 oracle oinstall 52429312 Jan 15 16:26 /opt/app/oracle/oradata/orcl/redo05.log   SQL> select group#,SEQUENCE#,STATUS FROM V$lOG;       GROUP#  SEQUENCE# STATUS ---------- ---------- ----------------          1       8989 CURRENT          2          0 UNUSED          5          0 UNUSED          4          0 UNUSED          3       8988 ACTIVE   SQL> select member from v$logfile;   MEMBER ----------------------------------------------------- /opt/app/oracle/oradata/orcl/redo03.log /opt/app/oracle/oradata/orcl/redo02.log /opt/app/oracle/oradata/orcl/redo01.log /opt/app/oracle/oradata/orcl/redo04.log /opt/app/oracle/oradata/orcl/redo05.log   
     基于当前情况,直接open库无望,但是空间不足问题需要先解决,不然恢复过程中创建redo空间不足依旧会报错卡死,所以先清理了监听和alert等日志,系统空闲了3G多空间,可以进行恢复操作
   
  [oracle@We1-db_Test trace]$ df -h Filesystem      Size  Used Avail Use% Mounted on devtmpfs        3.9G     0  3.9G   0% /dev tmpfs           3.9G     0  3.9G   0% /dev/shm tmpfs           3.9G  880K  3.9G   1% /run tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup /dev/vda1        40G   34G  3.9G  90% / tmpfs           783M     0  783M   0% /run/user/0   
     恢复数据库
1. 由于active redo丢失,毫无疑问,直接强制拉库,使用_allow_resetlogs_corruption参数开干
   
  SQL> startup mount pfile='/tmp/pfile'; ORACLE instance started.   Total System Global Area 2455228416 bytes Fixed Size                  2255712 bytes Variable Size             905970848 bytes Database Buffers         1526726656 bytes Redo Buffers               20275200 bytes Database mounted. SQL> recover database until cancel; ORA-00283: recovery session canceled due to errors ORA-01610: recovery using the BACKUP CONTROLFILE option must be done     SQL> recover database using backup controlfile; ORA-00279: change 311982775 generated at 12/31/2025 17:35:11 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/fast_recovery_area/ORCL/archivelog/2026_01_16/o1_mf_1_8988_%u_.a rc ORA-00280: change 311982775 for thread 1 is in sequence #8988     Specify log: {=suggested | filename | AUTO | CANCEL} cancel Media recovery cancelled. SQL> alter database open resetlogs; alter database open resetlogs * ERROR at line 1: ORA-01092: ORACLE instance terminated. Disconnection forced ORA-00600: internal error code, arguments: [2663], [0], [311982792], [0], [311982833], [], [], [], [], [], [], [] Process ID: 11917 Session ID: 576 Serial number: 3   
     alert日志报错
   
  Fri Jan 16 21:25:31 2026 Assigning activation ID 1750515127 (0x6856bdb7) Thread 1 opened at log sequence 1   Current log# 1 seq# 1 mem# 0: /opt/app/oracle/oradata/orcl/redo01.log Successful open of redo thread 1 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set Fri Jan 16 21:25:31 2026 SMON: enabling cache recovery Errors in file /opt/app/oracle/diag/rdbms/orcl/we1db/trace/we1db_ora_11917.trc  (incident=81753): ORA-00600: internal error code, arguments: [2663], [0], [311982792], [0], [311982833], [], [] Incident details in: /opt/app/oracle/diag/rdbms/orcl/we1db/incident/incdir_81753/we1db_ora_11917_i81753.trc Use ADRCI or Support Workbench to package the incident. See Note 411.1 at My Oracle Support for error and packaging details. Errors in file /opt/app/oracle/diag/rdbms/orcl/we1db/trace/we1db_ora_11917.trc: ORA-00600: internal error code, arguments: [2663], [0], [311982792], [0], [311982833], [], [] Errors in file /opt/app/oracle/diag/rdbms/orcl/we1db/trace/we1db_ora_11917.trc: ORA-00600: internal error code, arguments: [2663], [0], [311982792], [0], [311982833], [], [] Error 600 happened during db open, shutting down database USER (ospid: 11917): terminating the instance due to error 600 Instance terminated by USER, pid = 11917 ORA-1092 signalled during: alter database open resetlogs... opiodr aborting process unknown ospid (11917) as a result of ORA-1092 Fri Jan 16 21:25:33 2026 ORA-1092 : opitsk aborting process   
     不幸数据库遇到ORA-600 2663错误,这个故障在以前的文章中描述过,基本上和ORA-600 2662的处理思路类似,这里直接使用atch_SCN for Linux进行恢复
2. 使用Patch_SCN处理数据库SCN
   
  SQL> startup nomount pfile='/tmp/pfile'; ORACLE instance started.   Total System Global Area 2455228416 bytes Fixed Size                  2255712 bytes Variable Size             905970848 bytes Database Buffers         1526726656 bytes Redo Buffers               20275200 bytes SQL>@rectl   Control file created.   SQL> recover database; Media recovery complete.   
     
1.png

   
  SQL> alter database open;   Database altered. SQL> SELECT CURRENT_SCN FROM V$DATABASE;        CURRENT_SCN ----------------        322002903   
     到这里完成数据库open操作,后续逻辑导出完成恢复任务

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册