Physical Standby Database not opening in Read Only Mode
981760Feb 28 2013 — edited Mar 4 2013Hello All,
I have created the physical standby database on a different server by transferring all the archivelogs and datafiles and all the directories from the primary server.
Dirctory structure is same between the primary and standby database.
I used standby control file to mount the standby database and also pfile from the primary database. I did all the changes required in the pfile from the primary database.
Below is the link I followed to create my phyical standby database.
http://www.oracle-base.com/articles/11g/data-guard-setup-11gr2.php
Now, the standby and primary databases are in sync. Please see below.
Primary :
SQL> select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
366
SQL> select max(sequence#) from v$archived_log where applied='YES';
MAX(SEQUENCE#)
--------------
366
Standby .
SQL> select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
366
SQL> select max(sequence#) from v$archived_log where applied='YES';
MAX(SEQUENCE#)
--------------
366
Also, I can see the archive logs transferring in the respective directory from the primary to the standby as soon as I do a log switch over.
Issue, I am facing is , I am not able to open the standby database in READ ONLY Mode. When ever I try to open it in read only mode, alert log file shows the below message.
"Media Recovery Waiting for thread 1 sequence 367 (in transit)"
When I see in the primary database, this sequence number is not archived and its a current log file. When I tried archiving this one, my standby also gets the archive file but the alert log jumps into next current sequence number from the primary and again it starts waiting on the new ones. Is this expected behaviour in Dataguard ?
BUt I understand it should allow me to open the database in read only mode.
Database version i am using is 11.2.0.3. I am not understanding why the standby database is waiting on the current logfile from the primary which is not archived in the primary itself ?
However, this is the procedure I am following.
SQLPLUS > startup mount
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
SQL > ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL
SQL > alter database open read only
AFter this it just hangs and when I kill this process it shows me the below error.
SQL> alter database open read only;
ERROR at line 1:
ORA-10458: standby database requires recovery
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/usr/local/oracle/data/tvapa10/mcada/system01.dbf'
Any help is greatly appreciated and let me know if any other information is needed.
Thanks,