Handling Online Redo logs and Standby Redo logs
Handling Online Redo logs (ORL) and Standby Redo logs (SRL) on Primary and Physical Standby
PURPOSE: All documents are provided on this Blog just for educational purposes only. Please make sure that you run it in your test environment before to move on to production environment.
On Standby:
SQL> select sg.group#,sg.thread#,sg.sequence#,sg.bytes/1024/1024 "sizeMB",sg.archived,sg.status,le.type,le.member from V$STANDBY_LOG sg,v$logfile le where le.group#=sg.group#/
GROUP# THREAD# SEQUENCE# sizeMB ARC STATUS TYPE MEMBER
---------- ---------- ---------- ---------- --- ---------- ------- --------------------------------------------------
40 1 120 200 YES ACTIVE STANDBY /fast_recovery_area/TSTDB02/onlinelog/o1_mf_40_jdj
stm2v_.log
40 1 120 200 YES ACTIVE STANDBY +DATA01/TSTDB02/ONLINELOG/group_40.266.1075286387
41 0 0 200 NO UNASSIGNED STANDBY /fast_recovery_area/TSTDB02/onlinelog/o1_mf_41_jdj
stow9_.log
41 0 0 200 NO UNASSIGNED STANDBY +DATA01/TSTDB02/ONLINELOG/group_41.263.1075286389
42 0 0 200 NO UNASSIGNED STANDBY /fast_recovery_area/TSTDB02/onlinelog/o1_mf_42_jdj
stqxg_.log
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
standby_file_management string AUTO
System altered.
SQL> show parameter standby_file_management
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
standby_file_management string MANUAL
SQL> alter database recover managed standby database cancel;
Database altered.
Online standby redolog:
SQL> alter database clear logfile group 41;
Database altered.
SQL> alter database drop logfile group 41;
Database altered.
SQL> alter database add standby logfile group 41 '+DATA01' size 200m;
Database altered.
Execute the same steps for the group 40,42 and 43:
Online redologs
SQL> alter database clear logfile group 1;Database altered.
SQL> alter database drop logfile group 1;
Database altered.
SQL> alter database add logfile group 1 '+DATA01' size 200m;
Database altered.
SQL> set linesize 200
col MEMBER format a50
select lg.group#,lg.thread#,sequence#,lg.bytes/1024/1024 "sizeMB",lg.archived,lg.status,le.type,le.member from v$log lg,v$logfile le
where lg.group#=le.group#
/SQL> SQL> 2 3
GROUP# THREAD# SEQUENCE# sizeMB ARC STATUS TYPE MEMBER
---------- ---------- ---------- ---------- --- ---------------- ------- --------------------------------------------------
1 1 0 200 YES UNUSED ONLINE +DATA01/TSTDB02/ONLINELOG/group_1.260.1075303171
3 1 0 200 YES UNUSED ONLINE +DATA01/TSTDB02/ONLINELOG/group_3.269.1075303213
2 1 0 200 YES UNUSED ONLINE +DATA01/TSTDB02/ONLINELOG/group_2.261.1075303183
SQL> select sg.group#,sg.thread#,sg.sequence#,sg.bytes/1024/1024 "sizeMB",sg.archived,sg.status,le.type,le.member
from V$STANDBY_LOG sg,v$logfile le
where le.group#=sg.group#
/ 2 3 4
GROUP# THREAD# SEQUENCE# sizeMB ARC STATUS TYPE MEMBER
---------- ---------- ---------- ---------- --- ---------- ------- --------------------------------------------------
40 1 120 200 YES ACTIVE STANDBY +DATA01/TSTDB02/ONLINELOG/group_40.266.1075302753
41 0 0 200 YES UNASSIGNED STANDBY +DATA01/TSTDB02/ONLINELOG/group_41.258.1075302551
42 0 0 200 YES UNASSIGNED STANDBY +DATA01/TSTDB02/ONLINELOG/group_42.264.1075302763
43 0 0 200 YES UNASSIGNED STANDBY +DATA01/TSTDB02/ONLINELOG/group_43.263.1075302771
System altered.
SQL> alter database recover managed standby database disconnect from session using current logfile;
Database altered.
PROCESS STATUS THREAD# SEQUENCE# BLOCK# BLOCKS
--------- ------------ ---------- ---------- ---------- ----------
ARCH CONNECTED 0 0 0 0
DGRD ALLOCATED 0 0 0 0
DGRD ALLOCATED 0 0 0 0
ARCH CONNECTED 0 0 0 0
ARCH CLOSING 1 119 1 447
ARCH CLOSING 1 118 2048 239
RFS IDLE 0 0 0 0
RFS IDLE 1 120 50536 1
RFS IDLE 0 0 0 0
RFS IDLE 0 0 0 0
RFS IDLE 0 0 0 0
MRP0 APPLYING_LOG 1 120 50536 409600
12 rows selected.
MAX(SEQUENCE#)
--------------
119
On Primary:
MAX(SEQUENCE#)
--------------
119