删除redo所有日志,数据库无法启动

时间:2021-12-31 15:10:55

半夜在itpub上看到有人发贴,说不小心删除了redo所有日志,导致数据库无法启动,因此模拟了一下。   如下:

OS:  Oracle Linux Server release 5.7

DB:  Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

[oracle@yoon yoon]$ ls
control01.ctl  redo01.log  redo02.log  redo03.log  sysaux01.dbf  system01.dbf  temp01.dbf  undotbs01.dbf  users01.dbf  yoon01.dbf

[oracle@yoon yoon]$ rm -rf redo01.log redo02.log redo03.log 
[oracle@yoon yoon]$ ls
control01.ctl  sysaux01.dbf  system01.dbf  temp01.dbf  undotbs01.dbf  users01.dbf  yoon01.dbf

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>

SQL> startup
ORACLE instance started.

Total System Global Area 1653518336 bytes
Fixed Size                  2228904 bytes
Variable Size             956304728 bytes
Database Buffers          687865856 bytes
Redo Buffers                7118848 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 3775
Session ID: 1 Serial number: 5

SQL>

SQL> shutdown abort;
ORACLE instance shut down.

SQL> startup mount
ORACLE instance started.

Total System Global Area 1653518336 bytes
Fixed Size                  2228904 bytes
Variable Size             956304728 bytes
Database Buffers          687865856 bytes
Redo Buffers                7118848 bytes
Database mounted.
SQL>

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/u01/oracle/oradata/yoon/redo03.log
/u01/oracle/oradata/yoon/redo02.log
/u01/oracle/oradata/yoon/redo01.log

SQL>

SQL> alter database clear unarchived logfile group 1;

Database altered.

SQL> alter database clear unarchived logfile group 2;

Database altered.

SQL> alter database clear unarchived logfile group 3;

Database altered.

SQL> alter database open;

Database altered.

SQL>

SQL> select status from v$instance;

STATUS
------------------------------------
OPEN

SQL>