---解释见下面:
ORA-19527: physical standby redo log must be renamedCause: The CLEAR LOGFILE command was used at a physicalstandby database. This command cannot be used at a physical standbydatabase unless the LOG_FILE_NAME_CONVERT initialization parameteris set. This is required to avoid overwriting the primarydatabase"s logfiles.Action: Set the LOG_FILE_NAME_CONVERT initializationparameter.
---参数文件换成和standby一摸一样的后,再做,就变成下面的错误。
Managed Standby Recovery not using Real Time ApplyFri Dec 4 20:21:12 2009Errors in file/u01/app/oracle/admin/boston/bdump/shanghai_mrp0_27036.trc:ORA-00313: open failed for members of log group 5 of thread1ORA-00312: online log 5 thread 1:'/home/oracle/oradata/shanghai/redo05.log'ORA-27037: unable to obtain file statusLinux Error: 2: No such file or directoryAdditional information: 3
--换成这个命令后,recover automatic standby database ;ORA-01153: an incompatible media recovery is active---cancel后,再automatic recover
SQL> recover database cancel;ORA-00274: illegal recovery option CANCEL
SQL> recover managed standby databasecancel;Media recovery complete.SQL> recover automatic standby database ;ORA-00279: change 1162004 generated at 11/30/2009 14:14:10needed for thread 1ORA-00289: suggestion :/home/oracle/oradata/archive/1_104_703987687.dbfORA-00280: change 1162004 for thread 1 is in sequence#104ORA-00278: log file'/home/oracle/oradata/archive/1_104_703987687.dbf' no longer neededfor this recoveryORA-00308: cannot open archived log'/home/oracle/oradata/archive/1_104_703987687.dbf'ORA-27037: unable to obtain file statusLinux Error: 2: No such file or directoryAdditional information: 3
Specify log: {<RET>=suggested |filename | AUTO | CANCEL}cancelMedia recovery cancelled.----------除了联机日志,下一个实验做,这里归档都apply进来了,103apply成功,104是联机日志
----可以看见下面的日志,的应用过程,从95号开始到103完成。ALTER DATABASE RECOVER automatic standbydatabase Fri Dec 4 20:33:01 2009Media Recovery StartManaged Standby Recovery not using Real Time ApplyFri Dec 4 20:33:01 2009Media Recovery Log/home/oracle/oradata/archive/1_95_703987687.dbfFri Dec 4 20:33:07 2009Media Recovery Log/home/oracle/oradata/archive/1_96_703987687.dbfFri Dec 4 20:33:08 2009Media Recovery Log/home/oracle/oradata/archive/1_97_703987687.dbfFri Dec 4 20:33:09 2009Media Recovery Log/home/oracle/oradata/archive/1_98_703987687.dbfFri Dec 4 20:33:10 2009Media Recovery Log/home/oracle/oradata/archive/1_99_703987687.dbfFri Dec 4 20:33:11 2009Media Recovery Log/home/oracle/oradata/archive/1_100_703987687.dbfFri Dec 4 20:33:13 2009Media Recovery Log/home/oracle/oradata/archive/1_101_703987687.dbfFri Dec 4 20:33:13 2009Media Recovery Log/home/oracle/oradata/archive/1_102_703987687.dbfFri Dec 4 20:33:14 2009Media Recovery Log/home/oracle/oradata/archive/1_103_703987687.dbfFri Dec 4 20:33:18 2009Media Recovery Log/home/oracle/oradata/archive/1_104_703987687.dbfErrors with log/home/oracle/oradata/archive/1_104_703987687.dbfORA-279 signalled during: ALTER DATABASE RECOVERautomatic standby database ...Fri Dec 4 20:33:27 2009ALTER DATABASE RECOVER CANCEL Fri Dec 4 20:33:29 2009Media Recovery CanceledCompleted: ALTER DATABASE RECOVER CANCEL Fri Dec 4 20:34:42 2009
---------finish一下SQL> select max(sequence#)from v$archived_log where resetlogs_id =703987687;
MAX(SEQUENCE#)-------------- 94
SQL> alter database recover managed standbydatabase finish ;
Database altered.
--------查一下,似乎可以切换了。SQL> select switchover_status fromv$database;
SWITCHOVER_STATUS--------------------TO PRIMARY
---------finish后,产生了新的归档日志, 这个新产生的1_0_703987687.dbf就叫做standbylog
-rw-r----- 1 oracle oinstall 97792 Dec4 19:47 1_102_703987687.dbf-rw-r----- 1 oracle oinstall 3993088 Dec 419:47 1_103_703987687.dbf-rw-r----- 1 oracle oinstall 1024 Dec 4 20:371_104_703987687.dbf-rw-r----- 1 oracle oinstall 4194816 Dec 420:37 1_0_703987687.dbf[oracle@localhost archive]$
日志里面是这样的:
Media Recovery Start: Managed Standby Recovery(shanghai)Managed Standby Recovery not using Real Time ApplyMedia Recovery Waiting for thread 1 sequence 104Terminal Recovery timestamp is '12/04/2009 20:37:33'Terminal Recovery: applying standby redo logs.Terminal Recovery: thread 1 seq# 104 redo requiredTerminal Recovery: End-Of-Redo log allocationTerminal Recovery: standby redo logfile 1 created'/home/oracle/oradata/archive/1_0_703987687.dbf'This standby redo logfile is being created as part of thefailoveroperation. This standby redo logfile shouldbe deleted after theswitchover to primary operation completes.Fri Dec 4 20:37:34 2009Media Recovery Log/home/oracle/oradata/archive/1_0_703987687.dbfTerminal Recovery: log 1 reserved for thread 1 sequence104Identified End-Of-Redo for thread 1 sequence 104Fri Dec 4 20:37:34 2009Incomplete recovery applied all redo ever generated.Recovery completed through change 1162005Fri Dec 4 20:37:34 2009Media Recovery Complete (shanghai)Terminal Recovery: successful completionBegin: Standby Redo Logfile archivalFri Dec 4 20:37:34 2009RFS LogMiner: Client disabled from further notificationFri Dec 4 20:37:37 2009End: Standby Redo Logfile archivalResetting standby activation ID 2608785491 (0x9b7ee853)Completed: alter database recover managed standby databasefinish
---下面再切换,就可以了SQL> alter database commit to switchover toprimary;
Database altered.
SQL> select switchover_status fromv$database;
SWITCHOVER_STATUS--------------------TO STANDBY
![standby备份出来的,进行不完全恢复 新iphone恢复备份](http://img.aihuau.com/images/02111102/02013823t0141e833b30fb79870.jpg)
SQL> select database_rolefrom v$database ;
DATABASE_ROLE----------------PRIMARY
SQL>
---下面切换成功后,switch记下归档日志,发现是从105继续往下走了。104是中间生成的一个小的,数据大概就是丢失这个里面一点点,明天再做个试验,将这个联机日志里面的也给应用上。-rw-r----- 1 oracle oinstall 97792 Dec4 19:47 1_102_703987687.dbf-rw-r----- 1 oracle oinstall 3993088 Dec 419:47 1_103_703987687.dbf-rw-r----- 1 oracle oinstall 1024 Dec 4 20:371_104_703987687.dbf-rw-r----- 1 oracle oinstall 4194816 Dec 420:37 1_0_703987687.dbf-rw-r----- 1 oracle oinstall 245248 Dec4 20:45 1_105_703987687.dbf-rw-r----- 1 oracle oinstall 1024 Dec 4 20:451_106_703987687.dbf