前言: 为了提升系统安全,通常会在primary DB+standby DB 之外再做一份备份。 但直接对 primary DB备份可能会带来性能问题,所以决定在standby DB(open_mode:
READ ONLY WITH APPLY)跑RMAN备份。模拟primary DB+standby DB都挂掉,通过RMAN备份恢复DB
(Oracle 11.0.2.4)
操作步骤(实验证明是错误的!正确方法在后面):
standby中执行 backup database -> backup archivelog -> backup controlfile
新恢复DB中执行 restore controlfile -> restore database -> recover database -> open (read only)
具体操作(错误) :
standby中
RMAN> backup database format='/data/rmanbak/fd_%U_%T.bak';
RMAN> backup archivelog from time 'sysdate-0.5' format 'al_%U_%T.bak'
RMAN> backup current controlfile format '/data/rmanbak/cf_%U_%T.bak';
新恢复DB中
RMAN> startup nomount;
RMAN> restore controlfile from '/data/rmanbak/cf_drt2a0st_1_1_20180507.bak';
RMAN> restore database;
RMAN> alter database mount;
RMAN> recover database;
Starting recover at 07-MAY-18
using channel ORA_DISK_1
starting media recovery
RMAN-00571: ================&
(Oracle 11.0.2.4)
操作步骤(实验证明是错误的!正确方法在后面):
standby中执行 backup database -> backup archivelog -> backup controlfile
新恢复DB中执行 restore controlfile -> restore database -> recover database -> open (read only)
具体操作(错误) :
standby中
RMAN> backup database format='/data/rmanbak/fd_%U_%T.bak';
RMAN> backup archivelog from time 'sysdate-0.5' format 'al_%U_%T.bak'
RMAN> backup current controlfile format '/data/rmanbak/cf_%U_%T.bak';
新恢复DB中
RMAN> startup nomount;
RMAN> restore controlfile from '/data/rmanbak/cf_drt2a0st_1_1_20180507.bak';
RMAN> restore database;
RMAN> alter database mount;
RMAN> recover database;
Starting recover at 07-MAY-18
using channel ORA_DISK_1
starting media recovery
RMAN-00571: ================&