Increase current redo log size in standby database in mount stage

We have oracle 10g standby database. The standby database is always running in mount stage while apply logs manually not data guard is used.
We have increase size or online redo log in primary . Now want to inrease in standby database also.
how to increase the size of current online redo log in standby database while it in mount stage .
in mount stage we cant run alter system switch logfile

user11965804 wrote:
We have oracle 10g standby database. The standby database is always running in mount stage while apply logs manually not data guard is used.
We have increase size or online redo log in primary . Now want to inrease in standby database also.
how to increase the size of current online redo log in standby database while it in mount stage .
in mount stage we cant run alter system switch logfilein 10g Standby will be always in Mount status when MRP is running.
When you increase size of online redo log files in primary, You should increase in standby also..
Standby redo log file size should be equal or higher than primary. You no need to switch log files on Standby.
You will have only standby redo log files in standby not ORL(online redo log files)
You can use this below script to add standby redo log files.
http://www.pythian.com/news/581/oracle-standby-redo-logs/

Similar Messages

  • Need to drop a current redo log on a Standby

    Oracle 11.2.0.2
    I have 3 redo logs on a newly created Standby database.
    SQL> SELECT GROUP#, ARCHIVED, STATUS FROM V$LOG;
    GROUP# ARC STATUS
    1 YES UNUSED
    3 NO CURRENT
    2 YES UNUSED
    The redo log in Group 3 needs to be dropped and recreated. How can I force a log switch on a Standby in mount mode?
    SQL> alter database drop logfile group 3;
    alter database drop logfile group 3
    ERROR at line 1:
    ORA-01623: log 3 is current log for instance ufms216 (thread 1) - cannot drop
    ORA-00312: online log 3 thread 1: '/path/redo03.dbf'
    SQL> alter system switch logfile;
    alter system switch logfile
    ERROR at line 1:
    ORA-01109: database not open
    Please help !!!
    Thanks!
    Dave

    SAME ERROR/SITUATION
    SQL> startup mount
    ORACLE instance started.
    Total System Global Area 1.2527E+10 bytes
    Fixed Size 2231240 bytes
    Variable Size 3657434168 bytes
    Database Buffers 8858370048 bytes
    Redo Buffers 8691712 bytes
    Database mounted.
    SQL> SELECT GROUP#, ARCHIVED, STATUS FROM V$LOG;
    GROUP# ARC STATUS
    1 YES UNUSED
    3 NO CURRENT
    2 YES UNUSED
    SQL> alter database drop logfile group 3;
    alter database drop logfile group 3
    ERROR at line 1:
    ORA-01623: log 3 is current log for instance ufms216 (thread 1) - cannot drop
    ORA-00312: online log 3 thread 1: '/a0253/d01/oradata/ufms216/redo03.dbf'
    SQL> alter system switch logfile;
    alter system switch logfile
    ERROR at line 1:
    ORA-01109: database not open
    SQL> alter database recover managed standby database cancel;
    alter database recover managed standby database cancel
    ERROR at line 1:
    ORA-16136: Managed Standby Recovery not active
    SQL>
    HELP!

  • BRARCHIVE backup for high volume offline redo log files on Standby Database

    Hi All,
    We are through with all of Standby database activity, also started applying the offline redo log files on the Standby site.
    The throughput is not utilizing the actual available bandwith.
    So we are not able to copy the offline redo files on time, as the offline redo files are piling up on the Production side.
    My query is how we can parallely copy the offline redo log files on the DR site (ie. 4-5 redo files at a time).
    Kindly guide for the same.
    Regards,
    Shaibaz

    hi,
    I have one doubt.
    On other server (r3qas) the Umask settings are as followed
    User     UMASK value
    <sid>adm          077              
    ora<SID>           077
    root                   077
    Running SAP System :   SAP R3 4.6C
    Running DBMS          :  Oracle 9.0
    Operating System      :- HP_UX
    On this system The new offline redo log files are created with 600 permissions. There is not a problem here, while taking the backup. I checked last "r3qas-archive" backups. There, i have not found any single error related to permissions, or any others (something like, Cannot open /oracle/RQ1/../.........dbf).
    If everything is working fine, with this umask setting on this server, then, what's going wrong with the BW Quality server, which have the same umask settings (also others) for all the concerned users, as mentioned above.
    Regards,
    Bhavik Shroff

  • Increse of redo log size

    Hi,
    Please help me to increase the redo log size.
    As i am in DB - oracle 10G and OS - Suse linux 10SP2
    SQL> SELECT * FROM v$log;
        GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS
    FIRST_CHANGE# FIRST_TIME
             1          1        358  157286400          2 YES INACTIVE
       2972903289 28-NOV-11
             2          1        359  157286400          2 YES INACTIVE
       2972957401 28-NOV-11
             3          1        357  157286400          2 YES INACTIVE
       2972839164 27-NOV-11
        GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS
    FIRST_CHANGE# FIRST_TIME
             4          1        360  157286400          2 NO  CURRENT
       2973005629 29-NOV-11
    SQL> SELECT * FROM v$logfile;
        GROUP# STATUS  TYPE
    MEMBER
    IS_
             4         ONLINE
    /oracle/JID/origlogB/log_g14m1.dbf
    NO
             4         ONLINE
    /oracle/JID/mirrlogB/log_g14m2.dbf
    NO
        GROUP# STATUS  TYPE
    MEMBER
    IS_
             3         ONLINE
    /oracle/JID/origlogA/log_g13m1.dbf
    NO
             3         ONLINE
    /oracle/JID/mirrlogA/log_g13m2.dbf
        GROUP# STATUS  TYPE
    MEMBER
    IS_
    NO
             2         ONLINE
    /oracle/JID/origlogB/log_g12m1.dbf
    NO
             2         ONLINE
        GROUP# STATUS  TYPE
    MEMBER
    IS_
    /oracle/JID/mirrlogB/log_g12m2.dbf
    NO
             1         ONLINE
    /oracle/JID/origlogA/log_g11m1.dbf
    NO
        GROUP# STATUS  TYPE
    MEMBER
    IS_
             1         ONLINE
    /oracle/JID/mirrlogA/log_g11m2.dbf
    NO
    8 rows selected.
    Please help me how to execute for the above query.
    Thanks,
    Hariharan

    Hello
    Complete step:
    Step 1 SQL> select a.group#, a.member, b.bytes/1024/1024 mb from v$logfile a, v$log b where a.group# = b.group#;
    This query will show current group with redo log members and their size.
    Step 2 Make the last redo log CURRENT one
    To find which group is current at this moment use following query
    SQL> select group#, status from v$log;
    GROUP#         STATUS
    1                    CURRENT
    2                    INACTIVE
    3                    INACTIVE
    4                    INACTIVE
    Now as you can see that the first group is marked as current but we need to make group 4 as current. So force group 4 to become current one by switching log file. To switch log file use following query.
    SQL> alter system switch logfile;
    GROUP#         STATUS
    1                     INACTIVE
    2                    CURRENT
    3                    INACTIVE
    4                  INACTIVE
    SQL> alter system switch logfile;
    GROUP#        STATUS
    1                     INACTIVE
    2                     INACTIVE
    3                     INACTIVE
    4                    CURRENT
    Step 3 Drop the first online redo log
    After making the last online redo log file the CURRENT one, drop the first online redo log:
    SQL> alter database drop logfile group 1;
    Database altered.
    Note:
    Be aware that if you are going to drop a logfile group, it cannot be the current logfile group. However, where attempting to drop the logfile group resulted in the following error as a result of the logfile group having an active status:
    SQL> ALTER DATABASE DROP LOGFILE GROUP 1;
    ALTER DATABASE DROP LOGFILE GROUP 1
    ERROR at line 1:
    ORA-01624: log 1 needed for crash recovery of instance ORA920 (thread 1)
    ORA-00312: online log 1 thread 1: ''
    Easy problem to resolve. Simply perform a checkpoint on the database:
    SQL> ALTER SYSTEM CHECKPOINT GLOBAL;
    System altered.
    SQL> ALTER DATABASE DROP LOGFILE GROUP 1;
    Database altered.
    Step 4 You need to re-create dropped online redo log group with different size. Use the following query to achieve this.
    SQL> alter database add logfile group 1 ('<path>/origlogA/log_g11m1.dbf','<path>/mirrlogA/log_g11m2.dbf') size 200M reuse;
    Database altered.
    Step 5 Force another log switch
    After re-creating the online redo log group, force a log switch. The online redo log group just created should become the "CURRENT" group:
    SQL> select group#, status from v$log;
    GROUP#         STATUS
    1                     UNUSED
    2                     INACTIVE
    3                     INACTIVE
    4                    CURRENT
    SQL> alter system switch logfile;
    SQL> select group#, status from v$log;
    GROUP#         STATUS
    1                      CURRENT
    2                      INACTIVE
    3                      ACTIVE
    Step 6 # Loop back to Step 3 until all logs are rebuilt
    After re-creating an online redo log group, continue to re-create (or resize) all online redo log groups until all of them are rebuilt.
    Regards,
    Rajan

  • Oracle DataGuard - Standy Redo log on physical Standby db

    Hello Guys,
    A quick question on my 10.2.0.2 db with Windows 2003 x64 OSs.
    I have 2 machines - One for primary & the other for physical standby
    I have successfully setup DG with Real Time Apply and also tested switchover & failover scenarios and they work well and as expected...
    But I have a query which popped up when I was trying to set this up at home.
    I create the physical standby db by shutting the primary db and copying all the datafiles, tempfiles,online redo logs and then creating a standby control file which will be used for the physical standby db to start off with.
    After mounting the standby db, I tried to create standby redo logs files starting with Group 4 but I got error that standby group 4 already exists.
    Upon querying v$logfile view, I noticed that the standby redo logs that I created on primary are also showing up on the standby db which I understand is from the standby control file.
    So here is my quesiton: What is correct method of creating these standby redo logs on the standby database?
    I know that I could drop those 4 standby redo logs from the standby db and recreate them but all the DG docs online and the documents that I have referred say that I should create the standby redo logs on the standby as I did on the primary but how can this duplication be avoided i.e. from the standby control file?
    I know that I could use another method to create a hot backup such as RMAN etc...but I wanted to follow this way of shutting down the primary and copy the relevant database files.
    Any help appreciated...and thanks in advance guys!
    -Bharath

    so with the setup that I used, i.e. create a standby control file which contains info about the standby redo logs at the primary site, should I also copy over the standby redo logs from the primary to standby as I only copied the datafiles, tempfile(s) & online redo logs? But then the filenames of the standby redo logs will be the exact same as that of the primary. Will that cause any issue during a switchover/failover?
    I don't remember exactly how I did it when I got the whole thing working but I have a vague remembrance that I drop the std. redo log files entries from the std database and then recreate new ones with different filenames (as compared to primary).
    Thanks

  • Relocating datafiles on standby database after mount point on stanby is ful

    Hi,
    We have a physical standby database.
    The location of datafiles on primary database are at /oracle/oradata/ and the location of datafiles on standby database are at /oracle/oradata/
    Now we are facing a situation of mount mount getting full on standby database so we need to move some tablespaces to another location on standby.
    Say old location is /oracle/oradata/ and new location is /oradata_new/ and the tablespaces to be relocated are say tab1 and tab2.
    Can anybody tell me whether following steps are correct.
    1. Stop managed recovery on standby database
    alter database recover managed standby database cancel;
    2. Shutdown standby database
    shutdown immediate;
    3. Open standby database in mount stage
    startup mount;
    4. Copy the datafiles to new location say /oradata_new/ using os level command
    4. Rename the datafile
    alter database rename file
    '/oracle/oradata/tab1.123451.dbf', '/oracle/oradata/tab1.123452.dbf','/oracle/oradata/tab2.123451.dbf',''/oracle/oradata/tab2.123452.dbf'
    to '/oradata_new/tab1.123451.dbf', '/oradata_new/tab1.123452.dbf','/oradata_new/tab2.123451.dbf',''/oradata_new/tab2.123452.dbf';
    5. Edit the parameter db_file_name_convert
    alter system set db_file_name_convert='/oracle/oradata/tab1','/oradata_new/tab1','/oracle/oradata/tab2','/oradata_new/tab2'
    6. Start a managed recovery on standby database
    alter database recover managed standby database disconnect from session;
    I am littelbit confused in step 5 as we want to relocate only two tablespaces and not all tablespaces so we have used.
    Can we use db_file_name_convert like this i.e. does this work for only two tablespaces tab1 and tab2.
    Thanks & Regards
    GirishA

    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/manage_ps.htm#i1010428
    8.3.4 Renaming a Datafile in the Primary Database
    When you rename one or more datafiles in the primary database, the change is not propagated to the standby database. Therefore, if you want to rename the same datafiles on the standby database, you must manually make the equivalent modifications on the standby database because the modifications are not performed automatically, even if the STANDBY_FILE_MANAGEMENT initialization parameter is set to AUTO.
    The following steps describe how to rename a datafile in the primary database and manually propagate the changes to the standby database.
    To rename the datafile in the primary database, take the tablespace offline:
    SQL> ALTER TABLESPACE tbs_4 OFFLINE;
    Exit from the SQL prompt and issue an operating system command, such as the following UNIX mv command, to rename the datafile on the primary system:
    % mv /disk1/oracle/oradata/payroll/tbs_4.dbf
    /disk1/oracle/oradata/payroll/tbs_x.dbf
    Rename the datafile in the primary database and bring the tablespace back online:
    SQL> ALTER TABLESPACE tbs_4 RENAME DATAFILE 2> '/disk1/oracle/oradata/payroll/tbs_4.dbf'
    3> TO '/disk1/oracle/oradata/payroll/tbs_x.dbf';
    SQL> ALTER TABLESPACE tbs_4 ONLINE;
    Connect to the standby database, query the V$ARCHIVED_LOG view to verify all of the archived redo log files are applied, and then stop Redo Apply:
    SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
    SEQUENCE# APP
    8 YES
    9 YES
    10 YES
    11 YES
    4 rows selected.
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
    Shut down the standby database:
    SQL> SHUTDOWN;
    Rename the datafile at the standby site using an operating system command, such as the UNIX mv command:
    % mv /disk1/oracle/oradata/payroll/tbs_4.dbf /disk1/oracle/oradata/payroll/tbs_x.dbf
    Start and mount the standby database:
    SQL> STARTUP MOUNT;
    Rename the datafile in the standby control file. Note that the STANDBY_FILE_MANAGEMENT initialization parameter must be set to MANUAL.
    SQL> ALTER DATABASE RENAME FILE '/disk1/oracle/oradata/payroll/tbs_4.dbf'
    2> TO '/disk1/oracle/oradata/payroll/tbs_x.dbf';
    On the standby database, restart Redo Apply:
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
    2> DISCONNECT FROM SESSION;
    If you do not rename the corresponding datafile at the standby system, and then try to refresh the standby database control file, the standby database will attempt to use the renamed datafile, but it will not find it. Consequently, you will see error messages similar to the following in the alert log:
    ORA-00283: recovery session canceled due to errors
    ORA-01157: cannot identify/lock datafile 4 - see DBWR trace file
    ORA-01110: datafile 4: '/Disk1/oracle/oradata/payroll/tbs_x.dbf'

  • How to Increase database / log size of mirrored database

    Hi All,
    I have been asked to increase the default database and log size of two databases, both of which are mirrored.
    I have been trying to find out what else I need to do in this case other than the standard resizing.
    Are there extra steps I need to perform as these dbs are mirrored (SQL Mirroring)?
    Farren

    Hi Farren,
    Based on my test, if you choose to expand the mirrored database by increasing the size of an existing data or log file, you can directly execute the ALTER DATABASE statement on the Principal server as Uri’s post, but before that please make sure the mirroring
    status is synchronized. You can check the mirroring configuration and partner status with the following query.
    SELECT DB_NAME(DATABASE_ID) 'DBNAME',mirroring_state,
    mirroring_state_desc,mirroring_role,mirroring_role_desc,
    mirroring_partner_name,mirroring_partner_instance
    FROM sys.database_mirroring
    WHERE mirroring_guid IS NOT NULL
    However, if you choose to expand the mirrored database by adding a new file to the database, you need to perform extra steps as follows.
       1. Check the mirroring configuration and partner status with above query.
       2. Run the below command on the principal server to break the mirror.  
    ALTER DATABASE DatabaseName SET PARTNER OFF
       3. Create your database file on the principal server.
       4. Run a log backup on the principal server.
       5. Restore this log backup on the mirrored server using the NORECOVERY and MOVE options.
       6. Re-establish mirroring between the servers for this database.
    Reference:
    Increase the Size of a Database
    How to add a database file to a mirrored SQL Server database
    Thanks,
    Lydia Zhang
    Lydia Zhang
    TechNet Community Support

  • Urgent: Huge diff in total redo log size and archive log size

    Dear DBAs
    I have a concern regarding size of redo log and archive log generated.
    Is the equation below is correct?
    total size of redo generated by all sessions = total size of archive log files generated
    I am experiencing a situation where when I look at the total size of redo generated by all the sessions and the size of archive logs generated, there is huge difference.
    My total all session redo log size is 780MB where my archive log directory size has consumed 23GB.
    Before i start measuring i cleared up archive directory and started to monitor from a specific time.
    Environment: Oracle 9i Release 2
    How I tracked the sizing information is below
    logon as SYS user and run the following statements
    DROP TABLE REDOSTAT CASCADE CONSTRAINTS;
    CREATE TABLE REDOSTAT
    AUDSID NUMBER,
    SID NUMBER,
    SERIAL# NUMBER,
    SESSION_ID CHAR(27 BYTE),
    STATUS VARCHAR2(8 BYTE),
    DB_USERNAME VARCHAR2(30 BYTE),
    SCHEMANAME VARCHAR2(30 BYTE),
    OSUSER VARCHAR2(30 BYTE),
    PROCESS VARCHAR2(12 BYTE),
    MACHINE VARCHAR2(64 BYTE),
    TERMINAL VARCHAR2(16 BYTE),
    PROGRAM VARCHAR2(64 BYTE),
    DBCONN_TYPE VARCHAR2(10 BYTE),
    LOGON_TIME DATE,
    LOGOUT_TIME DATE,
    REDO_SIZE NUMBER
    TABLESPACE SYSTEM
    NOLOGGING
    NOCOMPRESS
    NOCACHE
    NOPARALLEL
    MONITORING;
    GRANT SELECT ON REDOSTAT TO PUBLIC;
    CREATE OR REPLACE TRIGGER TR_SESS_LOGOFF
    BEFORE LOGOFF
    ON DATABASE
    DECLARE
    PRAGMA AUTONOMOUS_TRANSACTION;
    BEGIN
    INSERT INTO SYS.REDOSTAT
    (AUDSID, SID, SERIAL#, SESSION_ID, STATUS, DB_USERNAME, SCHEMANAME, OSUSER, PROCESS, MACHINE, TERMINAL, PROGRAM, DBCONN_TYPE, LOGON_TIME, LOGOUT_TIME, REDO_SIZE)
    SELECT A.AUDSID, A.SID, A.SERIAL#, SYS_CONTEXT ('USERENV', 'SESSIONID'), A.STATUS, USERNAME DB_USERNAME, SCHEMANAME, OSUSER, PROCESS, MACHINE, TERMINAL, PROGRAM, TYPE DBCONN_TYPE,
    LOGON_TIME, SYSDATE LOGOUT_TIME, B.VALUE REDO_SIZE
    FROM V$SESSION A, V$MYSTAT B, V$STATNAME C
    WHERE
    A.SID = B.SID
    AND
    B.STATISTIC# = C.STATISTIC#
    AND
    C.NAME = 'redo size'
    AND
    A.AUDSID = sys_context ('USERENV', 'SESSIONID');
    COMMIT;
    END TR_SESS_LOGOFF;
    Now, total sum of REDO_SIZE (B.VALUE) this is far less than archive log size. This at time when no other user is logged in except myself.
    Is there anything wrong with query for collecting redo information or there are some hidden process which doesnt provide redo information on session basis.
    I have seen the similar implementation as above at many sites.
    Kindly provide a mechanism where I can trace which user is generated how much redo (or archive log) on a session basis. I want to track which all user/process are causing high redo to generate.
    If I didnt find a solution I would raise a SR with Oracle.
    Thanks
    [V]

    You can query v$sess_io, column block_changes to find out which session generating how much redo.
    The following query gives you the session redo statistics:
    select a.sid,b.name,sum(a.value) from v$sesstat a,v$statname b
    where a.statistic# = b.statistic#
    and b.name like '%redo%'
    and a.value > 0
    group by a.sid,b.name
    If you want, you can only look for redo size for all the current sessions.
    Jaffar

  • How to change redo log size in oracle 10g

    Hi Experts,
    Can anybody confirm how to change redo log size in oracle 10g?
    Amit

    Dear Amit,
    You can enlarge the size of existing Online Redo log files, by adding new groups with different size of files (origlog$/mirrlog$) and then carefully droping the old groups with  their associated inactive files.
    Please refer SAP Note 309526 - Enlarging redo log files to perform the activity.
    Steps to perform:
    STEP-1. Analyze the exisiting situation and prepare an action plan.
    A. You have to ensure that no more than one log switch per minute occurs during peak times.
    It may also be necessary to increase the size of the online redo logs until they are large enough.
    Too many log switches lead to too many checkpoints, which in turn lead to a high writing load in the I/O subsystem.
    Use ST04 -> Additional Functions --> Display GV$-Views
    There you can select
    Gv$LOG_HISTORY --->for determing your existing LOG switching frequency.
    GV$LOG -
    > list the status(INACTIVE/CURRENT/ACTIVE) /size/sequence no. of existing online redolog files
    GV$LOGFILE  --- > list the information of existing online  redolog files with their storage paths
    You can document the existing situation of Online Redo Log Fiile management before going to enlarge Redo Log Files.
    It will be helpful, if something goes wrong while performing activities.
    B. Based on above Situation analysis, Plan your New Redo Log Group and there Members with new optimal size.
    e.g.
    Group No.         Redo Log File Locations  u201C/oracle/<SID>/u201D                  Size
                                 /origlogA                  /mirrlogA            
    15                        log_g15m1.dbf         log_g15m2.dbf               100 MB
    17                        log_g17m1.dbf            log_g17m2.dbf               100 MB
                                /origlogB                    /mirrlogB
    16                       log_g16m1.dbf          log_g16m2.dbf            100 MB
    18                       log_g18m1.dbf            log_g18m2.dbf            100 MB
    Continue to next.....

  • Current Redo log corruption

    Suppose the current online redo log is corrupted, is there any way to make database functional other than doing incomplete recovery?
    Oracle documentation says we have to do incomplete recovery. Is Cancel based Incomplete recovery the only option.
    If this database is also the primary database for A physical standby database how to synchronize the Standby database with Primary? Since we would be opening Primary with Resetlogs....

    Incomplete Recovery upto the last (archive) redo log before the current one IS the only option.
    Your current redo log would have some transactions in it. Also, the datafiles would have had some dirty blocks written to disk by DBWR. Therefore, the datafiles would be inconsistent until and unless you can apply the redo that goes with those changes. Since the redo cannot be applied from the corrupt file, the datafiles themselves must be reverted to a prior image -- upto the last redo that can be applied.
    As for the standby, if you have Flashback configured, you can Flashback the Standby to the point 2 SCNs before the Primary Resetlogs.
    See DataGuard Scenario 12.5 at
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/scenarios.htm#i1049616
    Else use Scenario 8.4 at
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/manage_ps.htm#i1026480
    Hemant K Chitale
    http://hemantoracledba.blogspot.com
    Edited by: Hemant K Chitale on Jul 22, 2009 12:13 AM

  • Current redo log corrupted

    I have 6 Tera byte of database. My current redo log is currpted. I dont want to go for incomplete recovery as my database size is too large.
    what is the other option to recover the database
    oracle version is 9i

    This method wont work because I am talking about current online redo log
    You can clear an inactive redo log group when the database is open or closed. The procedure depends on whether the damaged group has been archived.
    To clear an inactive, online redo log group that has been archived, use the following procedure:
    1. If the database is shut down, then start a new instance and mount the database:
    STARTUP MOUNT
    2. Reinitialize the damaged log group. For example, to clear redo log group 2, issue the following statement:
    ALTER DATABASE CLEAR LOGFILE GROUP 2;

  • Redo Log Apply after Standby Restarts

    hi all,
    To start my learning on Data Guard, I've successfully followed the manual steps to create a physical standby database. What I noticed is when I restart the standby database, the received redo log aren't automatically applied until I issued the following command:
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;Is that normal? If yes, is there a way to make redo application remains automatic after standby database restarts?
    Thanks in advance.

    When you configure the DataGuard in an SQL environment you need to manually start the redo apply process after the Standby Database is mounted. You can script the database startup and include that when "select database_role from v$database" is Physical Standby then "ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;"
    OR
    Yo can configure the DataGuard under the broker control which will start the redo apply process automatically when the Standby Server starts.
    Sudhir.

  • Why it automatically recover current redo log in RMAN command window?

    Firstly, I restore controlfile and datafiles from a backupset.
    Then when I recover database in RMAN command window like below:
    RMAN> recover database;
    Starting recover at 15-AUG-13
    using target database control file instead of recovery catalog
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: sid=156 devtype=DISK
    starting media recovery
    archive log thread 1 sequence 9 is already on disk as file /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_9_90sd0slz_.arc
    archive log thread 1 sequence 10 is already on disk as file
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_10_90sd0tsb_.arc
    archive log thread 1 sequence 11 is already on disk as file
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_11_90sd110b_.arc
    archive log thread 1 sequence 12 is already on disk as file
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_12_90sd2ksr_.arc
    archive log thread 1 sequence 13 is already on disk as file
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_13_90sd2mc6_.arc
    archive log thread 1 sequence 14 is already on disk as file
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_14_90sd2qrm_.arc
    archive log thread 1 sequence 15 is already on disk as file
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_15_90sd2s0w_.arc
    archive log thread 1 sequence 16 is already on disk as file /u01/app/oracle/oradata/lonion/redo03.log
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_9_90sd0slz_.arc thread=1 sequence=9
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_10_90sd0tsb_.arc thread=1 sequence=10
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_11_90sd110b_.arc thread=1 sequence=11
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_12_90sd2ksr_.arc thread=1 sequence=12
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_13_90sd2mc6_.arc thread=1 sequence=13
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_14_90sd2qrm_.arc thread=1 sequence=14
    archive log filename=/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_15_90sd2s0w_.arc thread=1 sequence=15
    archive log filename=/u01/app/oracle/oradata/lonion/redo03.log thread=1 sequence=16
    media recovery complete, elapsed time: 00:00:04
    Finished recover at 15-AUG-13
    RMAN>
    But, when I recover database in SQL*Plus command window like below:
    [oracle@lonion ~]$ uniread sqlplus /nolog
    [uniread] Loaded history (2178 lines)
    SQL*Plus: Release 10.2.0.1.0 - Production on Thu Aug 15 19:25:38 2013
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    SQL> conn /as sysdba
    Connected.
    SQL>
    SQL> recover database;
    ORA-00283: recovery session canceled due to errors
    ORA-01610: recovery using the BACKUP CONTROLFILE option must be done
    SQL> recover database using backup controlfile;
    ORA-00279: change 2147842454 generated at 08/15/2013 18:34:28 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_9_%u_.a
    rc
    ORA-00280: change 2147842454 for thread 1 is in sequence #9
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    auto
    ORA-00279: change 2147842651 generated at 08/15/2013 18:40:25 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_10_%u_.
    arc
    ORA-00280: change 2147842651 for thread 1 is in sequence #10
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_9_90sd
    0slz_.arc' no longer needed for this recovery
    ORA-00279: change 2147842653 generated at 08/15/2013 18:40:26 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_11_%u_.
    arc
    ORA-00280: change 2147842653 for thread 1 is in sequence #11
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_10_90s
    d0tsb_.arc' no longer needed for this recovery
    ORA-00279: change 2147842656 generated at 08/15/2013 18:40:32 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_12_%u_.
    arc
    ORA-00280: change 2147842656 for thread 1 is in sequence #12
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_11_90s
    d110b_.arc' no longer needed for this recovery
    ORA-00279: change 2147842684 generated at 08/15/2013 18:41:21 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_13_%u_.
    arc
    ORA-00280: change 2147842684 for thread 1 is in sequence #13
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_12_90s
    d2ksr_.arc' no longer needed for this recovery
    ORA-00279: change 2147842686 generated at 08/15/2013 18:41:23 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_14_%u_.
    arc
    ORA-00280: change 2147842686 for thread 1 is in sequence #14
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_13_90s
    d2mc6_.arc' no longer needed for this recovery
    ORA-00279: change 2147842689 generated at 08/15/2013 18:41:27 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_15_%u_.
    arc
    ORA-00280: change 2147842689 for thread 1 is in sequence #15
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_14_90s
    d2qrm_.arc' no longer needed for this recovery
    ORA-00279: change 2147842691 generated at 08/15/2013 18:41:28 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_16_%u_.
    arc
    ORA-00280: change 2147842691 for thread 1 is in sequence #16
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_15_90s
    g0or9_.arc' no longer needed for this recovery
    ORA-00279: change 2147842986 generated at 08/15/2013 19:14:29 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_17_%u_.
    arc
    ORA-00280: change 2147842986 for thread 1 is in sequence #17
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_16_90s
    g0os5_.arc' no longer needed for this recovery
    ORA-00308: cannot open archived log
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_17_%u_
    .arc'
    ORA-27037: unable to obtain file status
    Linux Error: 2: No such file or directory
    Additional information: 3
    SQL> recover database using backup controlfile;
    ORA-00279: change 2147842986 generated at 08/15/2013 19:14:29 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_08_15/o1_mf_1_17_%u_.
    arc
    ORA-00280: change 2147842986 for thread 1 is in sequence #17
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    /u01/app/oracle/oradata/lonion/redo01.log        ---- Yon see, proceeding this process, it can't automatically apply the current redo log.
    Log applied.
    Media recovery complete.
    SQL>
    Question Coming:
    Now, my question is that 「Why it automatically recover current redo log in RMAN command window but not in SQL*Plus」?
    BTW: Please pay attention to the red font.

    It also seems not work.
    SQL> recover automatic database using backup controlfile;
    ORA-00279: change 2148632889 generated at 09/26/2013 12:45:22 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_09_26/o1_mf_1_48_%u_.
    arc
    ORA-00280: change 2148632889 for thread 1 is in sequence #48
    ORA-00278: log file
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_09_26/o1_mf_1_48_%u_
    .arc' no longer needed for this recovery
    ORA-00308: cannot open archived log
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_09_26/o1_mf_1_48_%u_
    .arc'
    ORA-27037: unable to obtain file status
    Linux Error: 2: No such file or directory
    Additional information: 3
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    auto
    ORA-00308: cannot open archived log
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_09_26/o1_mf_1_48_%u_
    .arc'
    ORA-27037: unable to obtain file status
    Linux Error: 2: No such file or directory
    Additional information: 3
    ORA-00308: cannot open archived log
    '/u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_09_26/o1_mf_1_48_%u_
    .arc'
    ORA-27037: unable to obtain file status
    Linux Error: 2: No such file
    or directory
    Additional information: 3
    SQL>
    It must specify the redo log.
    SQL> recover database using backup controlfile;
    ORA-00279: change 2148632889 generated at 09/26/2013 12:45:22 needed for thread
    1
    ORA-00289: suggestion :
    /u01/app/oracle/flash_recovery_area/LONION/archivelog/2013_09_26/o1_mf_1_48_%u_.
    arc
    ORA-00280: change 2148632889 for thread 1 is in sequence #48
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    /u01/app/oracle/oradata/lonion/redo02.log
    Log applied.
    Media recovery complete.
    SQL>

  • Current redo log file is lost

    Hi All,
    I got a scenario in which my current redo log file is lost:
    Do I need to:
    1)Clear log file group
    (or)
    2)I should perform incomplete recovery.
    What are the steps I should follow to recover this current redo log file?
    1)*If it is inactive* I can make use of
    ALTER DATABASE CLEAR LOGFILE UNARCHIVED GROUP 2;
    which will drop and recreate the log file.To recover from loss of an active online log group in NOARCHIVELOG mode:
    If the media failure is temporary, then correct the problem so that the database can reuse the group when required.
    Restore the database from a consistent, whole database backup (datafiles and control files) as described in "Restoring Datafiles Before Performing Incomplete Recovery". For example, enter:
    % cp /disk2/backup/*.dbf $ORACLE_HOME/oradata/trgt/
    Mount the database:
    STARTUP MOUNT
    Because online redo logs are not backed up, you cannot restore them with the datafiles and control files. In order to allow the database to reset the online redo logs, you must first mimic incomplete recovery:
    RECOVER DATABASE UNTIL CANCEL
    CANCEL
    Open the database using the RESETLOGS option:
    ALTER DATABASE OPEN RESETLOGS;
    Shut down the database consistently. For example, enter:
    SHUTDOWN IMMEDIATE
    Make a whole database backup.
    To recover from loss of an active online redo log group in ARCHIVELOG mode:
    If the media failure is temporary, then correct the problem so that the database can reuse the group when required. If the media failure is not temporary, then use the following procedure.
    Begin incomplete media recovery, recovering up through the log before the damaged log.
    Ensure that the current name of the lost redo log can be used for a newly created file. If not, then rename the members of the damaged online redo log group to a new location. For example, enter:
    ALTER DATABASE RENAME FILE "?/oradata/trgt/redo01.log" TO "/tmp/redo01.log";
    ALTER DATABASE RENAME FILE "?/oradata/trgt/redo01.log" TO "/tmp/redo02.log";
    Open the database using the RESETLOGS option:
    ALTER DATABASE OPEN RESETLOGS;
    My question is when the redo log file is current. What steps we should follow?
    Best regards,
    Rafi.
    http://rafioracledba.blogspot.com/
    2)If it is active then I can make use of below steps:

    Rafi (Oracle DBA) wrote:
    Hi Asif,
    This link I have seen by refering to previous post.I just have a slight doubt in mind.
    1)Do I need to make use of statement:
    Alter database clear unarchived log file group#;
    (or)
    Only if your group is current(or you are not able to drop it) and is not archived then you should use above query.
    We should perform incomplete recovery for this.If we have to perform incomplete recovery what are the steps I should follow?
    I doubt you should be performing incomplete recovery for this.
    Eg:Let us say my group 1 is dropped it has only one member and it is in active state.How to recover database?Can I get the steps?
    You would not be able to drop it if it is in active state, did you meant it is corrupted? If yes then you can use below query
    Alter database clear [unarchived] LOGFILE GROUP #;>
    Best regards,
    Rafi
    http://rafioracledba.blogspot.com/
    Make sure to backup your database after above activity.
    Regards
    Anurag

  • Online Redo logs instead of Standby Redo logs

    RDBMS Version: 11.2.0.3/Platform : RHEL 6.3
    To migrate a 3TB Database to a new DB server , we are going to use RMAN DUPLICATE.
    Step1. Take full backup of DB + Standby Control file at primary site and transfer the Bkp files to Standby site
    Step2. At standy site, we will run the RMAN duplicate target database for standby
    After the above step, we don't want to create the standby redo logs because the newly restored DB in standby server is going to be the new Prod DB which application will be pointing to.
    So, Can I skip the Standby Redo log creation part and create Online redo logs instead  ?
    As mentioned earlier, Our objective is not to create a proper Dataguard Standby DB setup. We just want to clone our DB to another server using RMAN Duplicate.

    Tom wrote:
    RDBMS Version: 11.2.0.3/Platform : RHEL 6.3
    To migrate a 3TB Database to a new DB server , we are going to use RMAN DUPLICATE.
    Step1. Take full backup of DB + Standby Control file at primary site and transfer the Bkp files to Standby site
    Step2. At standy site, we will run the RMAN duplicate target database for standby
    After the above step, we don't want to create the standby redo logs because the newly restored DB in standby server is going to be the new Prod DB which application will be pointing to.
    So, Can I skip the Standby Redo log creation part and create Online redo logs instead  ?
    As mentioned earlier, Our objective is not to create a proper Dataguard Standby DB setup. We just want to clone our DB to another server using RMAN Duplicate.
    Hi,
    Take full backup of DB + Standby Control
    We just want to clone our DB to another server using RMAN Duplicate
    If you want only clone database of production, why you  are take Standby controlfile?
    If you don't want create standby  database then, why you using DUPLICATE  command with FOR STANDBY option.
    You can  use DUPLICATE command for clone database, without for standby option.
    If you  say no, we want create standby database and we will perform swithover,
    then yes, you can use online redo  logs for max performance mode.
    and you can create standby redo logs on all database, but this redo logs will use by database when database role
    is standby.
    Regards
    Mahir M. Quluzade

Maybe you are looking for