oracle redo删除,意外删除redo的恢复

今天做了点删除redo log的测试,查阅资料和实际动手整理了一下的一些东西。

A非当前联机日志被删除损坏

正常关闭数据库

shutdown immediate

我们在os上删除logfile redo01.log,此redo log属于group 1

startup mount;

startup;

select * from v$log

v$log视图中有columnstatus和archived log,其中status有current当前日志组,inactive非活动日志组,active活动日志组,unused未使用日志组,archived表示是否已经归档。当然如果是当前日志组,oracle是不会对其归档的。

如果此时我们删除的是非当前日志redo01.log,redo01.log已经归档了,此时启动数据库到open状态时oracle会提示缺少redo01.log,只需要重新一个redo01.log即可open数据库。

Alter database clear logfile group 1或者

Alter database clear unarchived logfile group 1

如果此时是redo01.log是当前日志组了,我们就无法clear重建了,因为此redo log还没有归档,所以无法重建。

B丢失当前日志组。

利用recover database然后resetlogs

Startup mount

删除当前日志文件

recover database until cancel

恢复数据库到cancel。

Alter database

你可能感兴趣的:(oracle,redo删除)