Oracle 11g在备份和恢复方面新增了很多的功能,无论是性能、功能性、安全性和可操作性方面都有了不同程度的提高。
这一篇介绍RMAN删除归档日志时的验证。
在11g以前的版本,Oracle的rman并没有和其他日志应用系统紧密结合起来,因此,rman删除归档日志的时候并不会判断这个日志是否对其他系统仍然有用。
当rman删除日志后,可能会发现其他的系统比如DATA GUARD、STREAMS等由于日志被删除而无法正常工作。
从11g开始,rman在删除时会首先判断,这个日志是否其他系统仍然需要,当其他需要仍然需要这个日志时,rman会报警,且不会删除这个日志。
先看看10g下的情况:
SQL> conn sys/test@testrac_standby as sysdba已连接。
SQL> select sequence# from v$managed_standby where status = 'WAIT_FOR_LOG';
SEQUENCE#
----------
577
SQL> shutdown immediate
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> exit从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options 断开
$ rman target /
恢复管理器: Release 10.2.0.3.0 - Production on 星期四 9月 13 04:14:09 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到目标数据库: TESTRAC (DBID=4291216984)
RMAN> delete archivelog sequence 577;