清除重做日志文件

数据库打开时,重做日志文件可能会损坏,并最终停止数据库活动,因为归档无法继续。在这种情况下,ALTER DATABASE CLEAR LOGFILE语句可用于在不关闭数据库的情况下重新初始化文件。

以下语句清除重做日志组编号3中的日志文件:

ALTER DATABASE CLEAR LOGFILE GROUP 3;

此语句克服了两种无法删除重做日志的情况:

  • 如果只有两个日志组
  • 损坏的重做日志文件属于当前组

如果损坏的重做日志文件尚未归档,请在语句中使用UNARCHIVED关键字。

ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 3;

 此语句清除损坏的重做日志并避免存档它们。已清除的重做日志即使未归档也可供使用。

如果清除恢复备份所需的日志文件,则无法再从该备份恢复。数据库在警报日志中写入一条消息,描述无法恢复的备份。

如果清除未归档的重做日志文件,则应该对数据库进行另一次备份。

要清除使脱机表空间联机所需的未归档重做日志,请使用ALTER DATABASE CLEAR LOGFILE语句中的UNRECOVERABLE DATAFILE子句。

如果清除使脱机表空间联机所需的重做日志,则无法再次使表空间联机。您必须删除表空间或执行不完整的恢复。请注意,正常脱机的表空间不需要恢复。

参考资料

https://docs.oracle.com/cd/E11882_01/server.112/e25494/onlineredo.htm#ADMIN11328

猜你喜欢

转载自www.cnblogs.com/sorliran/p/9268255.html
今日推荐