5 Replies Latest reply on Dec 4, 2012 2:40 PM by Victor Armbrust

    how to solve sequence gaps on standby

      Hi Experts,

      I really need to hear your thoughts.

      I have 11g databases for both production and standby database. FYI production is setup with RAC. For some reason, the standby database lost connection for 20 days. So we have sequence gaps.

      What I did copied the archived logs from the production to standby since its not deleted. But I just notice that there is file_name convert associated with archivelogs. I already registered the archivelogs but with the wrong naming convention. It is correct to transfer archivelogs from prod to standby?

      And the dg is working fine now, it's transporting the recent archivelogs but its not applying. How to applied those logs?

      I would be very grateful of your response.

        • 1. Re: how to solve sequence gaps on standby
          Shivananda Rao

          Try registering the archives with the correct naming convention. Make sure that the MRP is started on the standby database.

          On the standby database:
          SQL>select process,status,sequence# from v$managed_standby;
          • 2. Re: how to solve sequence gaps on standby

            SQL> select process,status,sequence# from v$managed_standby;

            --------- ------------ ----------
            ARCH CLOSING 5370
            ARCH CONNECTED 0
            ARCH CLOSING 5371
            ARCH CLOSING 5369
            MRP0 WAIT_FOR_GAP 811
            RFS IDLE 0
            RFS IDLE 5372
            RFS IDLE 0
            RFS IDLE 4241

            9 rows selected.

            this is the result of the query.

            so is it ok if i rename manually the from OS the archivelogs? like for example, we have archivelogs from prod named "oradb.arc" and on standby we have "orasty.arc". so i just copied the oradb.arc to standby. is it ok if i manually rename it? then register the archivelog?

            Edited by: Kaye Chow on Nov 23, 2012 6:50 AM
            • 3. Re: how to solve sequence gaps on standby

              Use below sql to find the gaps in the database.

              Select * from v$archive_gap;

              This will show the lowest and highest sequence need to resolve the gaps.

              and then just scp the archives from primary to standby location and register the archives in standby. It will automatically start applying.

              Alter database register logfile '\u01\app\oracle\standby_arch\oradb.arc';

              Let me know if you have any issues.


              • 4. Re: how to solve sequence gaps on standby
                Try to register those log files manually using

                alter database register logfile 'path'

                or whatever the syntax is
                try this.

                Or check whether MRP is started
                • 5. Re: how to solve sequence gaps on standby
                  Victor Armbrust
                  You can do this manually by registering the archivelog files on standby

                  If you have broker configured on your DG you can also see the gap using "show database <standby db>" command

                  You can also look from errors using the query below

                  column message format a80
                  select message, timestamp
                  from v$dataguard_status
                  where severity in ('Error','Fatal')
                  order by timestamp;