Tuesday, October 13, 2015

Registering archive logfiles manually on a standby database

Some time, the standby database might go far behind with primary database. One of the reason, the archive logs are not shipping to standby database quickly due to network issue. There may be several archive logs are waiting in standby location for one archive log file.  


For instance, Archive log sequence # 100 is not shipped to standby location. But other archive logs(sequence#101 to sequence#200) were shipped to standby and it is waiting to ship the sequence# 100.  In this scenario, DBA can copy the archive log file and register manually. Once manually registered, the sequence#101 to sequence#200 will apply automatically on standby database.

 Step 1

Let us assume, the archive log file devdb12_1_283_801988635.arc is not shipped to standby due to some reason. Copy the archive log file devdb12_1_283_801988635.arc manually from primary to standby archive destination location.


Step 2

Run the below command in standby database.

 ALTER DATABASE REGISTER LOGFILE '/dbArch/oradata/devdb12/ devdb12_1_283_801988635.arc';

Step 3

Verify the standby database and see if the copied archive log file is applied.

 
Select sequence#,applied from v$archived_log where sequence# >= 283

Monitor the alert log and keep watch the archive log files shipment.

No comments: