Alter system archive log current

Hi everyone,
I write code to alter system archive log current in PL/SQL as following:
declare
start_sequence number;
end_sequence number;
begin
--- get start sequence# ---
select SEQUENCE# into start_sequence from v_$log where status='CURRENT';
--- get end sequence# ---
alter system archive log current;
select SEQUENCE# into end_sequence from v_$log where status='CURRENT';
end;
When I run it, I got the following error:
alter system archive log current;
ERROR at line 11:
ORA-06550: line 11, column 6:
PLS-00103: Encountered the symbol "ALTER" when expecting one of the following:
begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipe
What does it mean? How can I fix it/
Thanks!

That is because you are trying to issue a DDL call in PL/SQL. The only way you can achieve this is to use DYNAMIC SQL.
If you change your ALTER statement to:
EXECUTE IMMEDIATE 'ALTER SYSTEM ARCHIVE LOG CURRENT';It should work.
HTH!

Similar Messages

  • RMAN ALert Log Message: ALTER SYSTEM ARCHIVE LOG

    Created a new Database on Oracle 10.2.0.4 and now seeing "ALTER SYSTEM ARCHIVE LOG" in the Alert Log only when the online RMAN backup runs:
    Wed Aug 26 21:52:03 2009
    ALTER SYSTEM ARCHIVE LOG
    Wed Aug 26 21:52:03 2009
    Thread 1 advanced to log sequence 35 (LGWR switch)
    Current log# 2 seq# 35 mem# 0: /u01/app/oracle/oradata/aatest/redo02.log
    Current log# 2 seq# 35 mem# 1: /u03/oradata/aatest/redo02a.log
    Wed Aug 26 21:53:37 2009
    ALTER SYSTEM ARCHIVE LOG
    Wed Aug 26 21:53:37 2009
    Thread 1 advanced to log sequence 36 (LGWR switch)
    Current log# 3 seq# 36 mem# 0: /u01/app/oracle/oradata/aatest/redo03.log
    Current log# 3 seq# 36 mem# 1: /u03/oradata/aatest/redo03a.log
    Wed Aug 26 21:53:40 2009
    Starting control autobackup
    Control autobackup written to DISK device
         handle '/u03/exports/backups/aatest/c-2538018370-20090826-00'
    I am not issuing a log swiitch command. The RMAN commands I am running are:
    CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/exports/backups/aatest/%F';
    CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;
    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u03/exports/backups/aatest/%d_%U';
    BACKUP DATABASE PLUS ARCHIVELOG;
    DELETE NOPROMPT OBSOLETE;
    DELETE NOPROMPT ARCHIVELOG UNTIL TIME 'SYSDATE-2';
    I do not see this message on any other 10.2.0.4 instances. Has anyone seen this and if so why is this showing in the log?
    Thank you,
    Curt Swartzlander

    There's no problem with log switch. Please refer to documentation for more information on syntax "PLUS ARCHIVELOG"
    http://download.oracle.com/docs/cd/B19306_01/backup.102/b14192/bkup003.htm#sthref377
    Adding BACKUP ... PLUS ARCHIVELOG causes RMAN to do the following:
    *1. Runs the ALTER SYSTEM ARCHIVE LOG CURRENT command.*
    *2. Runs BACKUP ARCHIVELOG ALL. Note that if backup optimization is enabled, then RMAN skips logs that it has already backed up to the specified device.*
    *3. Backs up the rest of the files specified in BACKUP command.*
    *4. Runs the ALTER SYSTEM ARCHIVE LOG CURRENT command.*
    *5. Backs up any remaining archived logs generated during the backup.*
    This guarantees that datafile backups taken during the command are recoverable to a consistent state.

  • Question about ALTER SYSTEM ARCHIVE LOG START

    Good morning,
    I'm trying (unsuccessfully) to get my database to be in archive log mode.
    These are the steps I followed:
    SQL> shutdown immediate;
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount;
    ORACLE instance started.
    Total System Global Area  535662592 bytes
    Fixed Size                  1375792 bytes
    Variable Size             377487824 bytes
    Database Buffers          150994944 bytes
    Redo Buffers                5804032 bytes
    Database mounted.
    SQL> select log_mode from v$database;
    LOG_MODE
    ARCHIVELOG
    SQL> show parameter log_archive_start;
    NAME                                 TYPE        VALUE
    log_archive_start                    boolean     FALSE
    SQL> alter system archive log start;
    System altered.
    SQL> show parameter log_archive_start;
    NAME                                 TYPE        VALUE
    log_archive_start                    boolean     FALSE
    SQL>I've gone thru that process twice but, I don't seem to be able to get the ARCH process to start. (newbie mistake I'm sure...)
    Thank you for your help (again!),
    John.

    The parameter log_archive_start is no more needed John (as suggested already) and the best way to check the archive options is through the archive log list command.
    [oracle@edhdr2p0-orcl oui]$ sqlplus / as sysdba
    SQL*Plus: Release 11.2.0.1.0 Production on Tue Aug 10 10:51:57 2010
    Copyright (c) 1982, 2009, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    With the Partitioning, Automatic Storage Management, OLAP, Data Mining
    and Real Application Testing options
    SQL> archive log list
    Database log mode              No Archive Mode
    Automatic archival             Disabled
    Archive destination            USE_DB_RECOVERY_FILE_DEST
    Oldest online log sequence     11
    Current log sequence           13
    SQL> shut immediate
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount
    ORACLE instance started.
    Total System Global Area  418484224 bytes
    Fixed Size                  1336932 bytes
    Variable Size             318769564 bytes
    Database Buffers           92274688 bytes
    Redo Buffers                6103040 bytes
    Database mounted.
    SQL> select process,status from V$archive_processes;
       PROCESS STATUS
             0 STOPPED
             1 STOPPED
             2 STOPPED
             3 STOPPED
             4 STOPPED
             5 STOPPED
             6 STOPPED
             7 STOPPED
             8 STOPPED
             9 STOPPED
            10 STOPPED
       PROCESS STATUS
            11 STOPPED
            12 STOPPED
            13 STOPPED
            14 STOPPED
            15 STOPPED
            16 STOPPED
            17 STOPPED
            18 STOPPED
            19 STOPPED
            20 STOPPED
            21 STOPPED
       PROCESS STATUS
            22 STOPPED
            23 STOPPED
            24 STOPPED
            25 STOPPED
            26 STOPPED
            27 STOPPED
            28 STOPPED
            29 STOPPED
    30 rows selected.
    SQL>
    SQL> alter database archivelog;
    Database altered.
    SQL> alter database open;
    archive log list;
    Database altered.
    SQL> Database log mode         Archive Mode
    Automatic archival             Enabled
    Archive destination            USE_DB_RECOVERY_FILE_DEST
    Oldest online log sequence     11
    Next log sequence to archive   13
    Current log sequence           13
    SQL>
    SQL> select * from V$archive_processes where status <> 'STOPPED';
       PROCESS STATUS     LOG_SEQUENCE STAT
             0 ACTIVE                0 IDLE
             1 ACTIVE                0 IDLE
             2 ACTIVE                0 IDLE
             3 ACTIVE                0 IDLEHTH
    Aman....

  • Switch logfile VS Archive log current

    What is the difference between this two command?
    - SQL> alter system switch logfile;
    This command switch the current log and if in ARCHIVELOG mode, it will archive it as well. Am I rite?
    SQL> alter system archive log current;
    This command DID NOT switch to another log group, remain the same log group but archive the current log? Am I rite?
    Thanks

    You're right about your first question, not for the second. Here an extract from Oracle documentation :
    CURRENT Clause
    Specify CURRENT to manually archive the current redo log file group of the specified thread, forcing a log switch. If you omit the THREAD parameter, then Oracle Database archives all redo log file groups from all enabled threads, including logs previous to current logs. You can specify CURRENT only when the database is open.
    NOSWITCH
    Specify NOSWITCH if you want to manually archive the current redo log file group without forcing a log switch. This setting is used primarily with standby databases to prevent data divergence when the primary database shuts down. Divergence implies the possibility of data loss in case of primary database failure.
    You can use the NOSWITCH clause only when your instance has the database mounted but not open. If the database is open, then this operation closes the database automatically. You must then manually shut down the database before you can reopen it.

  • 10g RAC archive log current

    How the "Alter system archive log current" command works with 10g RAC. Will it apply to all the rac instances or just the connected instance.

    Since your login is "RAC_DBA" I think you should be able to test this and answer your own question ?

  • Error when I backup with rman plus archive log

    Hi All,
    I tried below command
    run {
    SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
    BACKUP DATABASE INCLUDE CURRENT CONTROLFILE PLUS ARCHIVELOG DELETE ALL INPUT;
    and that show below error
    archived log file name=+DATA/pimprd/archivelog/pimarch_2_95_698703544.arc RECID=128 STAMP=706186164
    archived log file name=+DATA/pimprd/archivelog/pimarch_2_96_698703544.arc RECID=130 STAMP=706186173
    Finished backup at 21-DEC-09
    ORACLE error from target database:
    ORA-03114: not connected to ORACLE
    Starting backup at 21-DEC-09
    current log archived
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=259 instance=pimdb1 device type=DISK
    channel ORA_DISK_1: starting archived log backup set
    channel ORA_DISK_1: specifying archived log(s) in backup set
    input archived log thread=1 sequence=153 RECID=113 STAMP=705896703
    input archived log thread=1 sequence=154 RECID=116 STAMP=705983105
    input archived log thread=1 sequence=155 RECID=119 STAMP=706069504
    archived log file name=+DATA/pimprd/archivelog/pimarch_2_95_698703544.arc RECID=128 STAMP=706186164
    archived log file name=+DATA/pimprd/archivelog/pimarch_2_96_698703544.arc RECID=130 STAMP=706186173
    Finished backup at 21-DEC-09
    ORACLE error from target database:
    ORA-03114: not connected to ORACLE
    Starting backup at 21-DEC-09
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    ORA-03114: not connected to ORACLE
    RMAN-03002: failure of backup plus archivelog command at 12/21/2009 11:00:18
    ORA-03114: not connected to ORACLE
    There are RAC 11.1.0.6.0 on AIX 5.3 with ASM.
    Please advise,
    Thank you,
    Hiko

    ็Hi All,
    I tried backup archivelog again and show same error,
    Line: -----
    rman target /
    Recovery Manager: Release 11.1.0.6.0 - Production on Mon Dec 21 14:48:29 2009
    Copyright (c) 1982, 2007, Oracle. All rights reserved.
    connected to target database: PIMDB (DBID=3834713912)
    RMAN> run
    2> {
    3> backup archivelog all;
    4> }
    Starting backup at 21-DEC-09
    current log archived
    using target database control file instead of recovery catalog
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=275 instance=pimdb1 device type=DISK
    channel ORA_DISK_1: starting archived log backup set
    channel ORA_DISK_1: specifying archived log(s) in backup set
    input archived log thread=1 sequence=161 RECID=131 STAMP=706190624
    input archived log thread=1 sequence=162 RECID=133 STAMP=706200525
    input archived log thread=2 sequence=97 RECID=132 STAMP=706190625
    input archived log thread=2 sequence=98 RECID=134 STAMP=706200526
    channel ORA_DISK_1: starting piece 1 at 21-DEC-09
    channel ORA_DISK_1: finished piece 1 at 21-DEC-09
    piece handle=/oradata/backup/pimdb/rman/pimdb_Fulldata_20091221_97_1.bck tag=TAG20091221T144854 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
    Finished backup at 21-DEC-09
    Starting Control File and SPFILE Autobackup at 21-DEC-09
    piece handle=/oradata/backup/pimdb/rman/pimdb_Controlfile_c-3834713912-20091221-02 comment=NONE
    Finished Control File and SPFILE Autobackup at 21-DEC-09
    ORACLE error from target database:
    ORA-03114: not connected to ORACLE
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    ORA-03114: not connected to ORACLE
    RMAN-03009: failure of REFAF command on default channel at 12/21/2009 14:59:33
    ORA-03114: not connected to ORACLE
    RMAN> exit
    Recovery Manager complete.
    Line: -----
    And I check in alert log file that show below error
    Line: -----
    Mon Dec 21 14:48:44 2009
    Thread 1 advanced to log sequence 163
    Current log# 1 seq# 163 mem# 0: +DATA/pimdb/onlinelog/group_1.282.698703549
    Mon Dec 21 14:49:17 2009
    Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x3E00000000] [PC:0x10180AA48, kxfpg1srv()+04e8]
    Errors in file /oracle/diag/rdbms/pimdb/pimdb1/trace/pimdb1_ora_5095646.trc (incident=64044):
    ORA-07445: exception encountered: core dump [kxfpg1srv()+04e8] [SIGSEGV] [ADDR:0x3E00000000] [PC:0x10180AA48] [Address not mapped to object] []
    Incident details in: /oracle/diag/rdbms/pimdb/pimdb1/incident/incdir_64044/pimdb1_ora_5095646_i64044.trc
    Mon Dec 21 14:49:31 2009
    Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x3E00000000] [PC:0x10180AA48, kxfpg1srv()+04e8]
    Errors in file /oracle/diag/rdbms/pimdb/pimdb1/trace/pimdb1_m000_1831050.trc (incident=64163):
    ORA-07445: exception encountered: core dump [kxfpg1srv()+04e8] [SIGSEGV] [ADDR:0x3E00000000] [PC:0x10180AA48] [Address not mapped to object] []
    Incident details in: /oracle/diag/rdbms/pimdb/pimdb1/incident/incdir_64163/pimdb1_m000_1831050_i64163.trc
    Mon Dec 21 14:49:33 2009
    Trace dumping is performing id=[cdmp_20091221144933]
    Mon Dec 21 14:49:34 2009
    Sweep Incident[64163]: completed
    Mon Dec 21 14:59:33 2009
    Process 0x70000020477df88 appears to be hung while dumping
    Current time = 1584185732, process death time = 1584124482 interval = 60000
    Attempting to kill process 0x70000020477df88 with OS pid = 5095646
    OSD kill succeeded for process 70000020477df88
    Line: -----
    Please advice,
    Thank you
    Hiko

  • Archive logs are missing in hot backup

    Hi All,
    We are using the following commands to take hot backup of our database. Hot backup is fired by "backup" user on Linux system.
    =======================
    rman target / nocatalog <<EOF
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '$backup_dir/$date/%F';
    run {
    allocate channel oem_backup_disk1 type disk format '$backup_dir/$date/%U';
    #--Switch archive logs for all threads
    sql 'alter system archive log current';
    backup as COMPRESSED BACKUPSET database include current controlfile;
    #--Switch archive logs for all threads
    sql 'alter system archive log current';
    #--Backup Archive logs and delete what we've backedup
    backup as COMPRESSED BACKUPSET archivelog all not backed up delete all input;
    release channel oem_backup_disk1;
    allocate channel for maintenance type disk;
    delete noprompt obsolete device type disk;
    release channel;
    exit
    EOF
    =======================
    Due to which after command (used 2 times) "sql 'alter system archive log current';" I see the following lines in alert log 2 times. Because of this all the online logs are not getting archived (Missing 2 logs per day), the backup taken is unusable when restoring. I am worried about this. I there any to avoid this situation.
    =======================
    Errors in file /u01/oracle/admin/rac/udump/rac1_ora_3546.trc:
    ORA-19504: failed to create file "+DATA/rac/1_32309_632680691.dbf"
    ORA-17502: ksfdcre:4 Failed to create file +DATA/rac/1_32309_632680691.dbf
    ORA-15055: unable to connect to ASM instance
    ORA-01031: insufficient privileges
    =======================
    Regards,
    Kunal.

    All thanks you for help, pleas find additional information. I goth the following error as log sequence was missing. Everyday during hotbackup, there are 2 missing archive logs, which makes our backup inconsistent and useless.
    archive log filename=/mnt/xtra-backup/ora_archivelogs/1_32531_632680691.dbf thread=1 sequence=32531
    archive log filename=/mnt/xtra-backup/ora_archivelogs/2_28768_632680691.dbf thread=2 sequence=28768
    archive log filename=/mnt/xtra-backup/ora_archivelogs/2_28769_632680691.dbf thread=2 sequence=28769
    archive log filename=/mnt/xtra-backup/ora_archivelogs/2_28770_632680691.dbf thread=2 sequence=28770
    archive log filename=/mnt/xtra-backup/ora_archivelogs/1_32532_632680691.dbf thread=1 sequence=32532
    archive log filename=/mnt/xtra-backup/ora_archivelogs/2_28771_632680691.dbf thread=2 sequence=28771
    archive log filename=/mnt/xtra-backup/ora_archivelogs/2_28772_632680691.dbf thread=2 sequence=28772
    archive log filename=/mnt/xtra-backup/ora_archivelogs/2_28772_632680691.dbf thread=2 sequence=28773
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of recover command at 12/13/2012 04:22:56
    RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile '/mnt/xtra-backup/ora_archivelogs/2_28772_632680691.dbf'
    ORA-00310: archived log contains sequence 28772; sequence 28773 required
    ORA-00334: archived log: '/mnt/xtra-backup/ora_archivelogs/2_28772_632680691.dbf'
    Let me try the susggestions provided above.

  • RMAN: How to apply Archive Logs after recoverying of all physical files

    Hi;
    I am using RMAN Oracle10g; my test database has being corrupted. I have already taken 0 level backup through this command
    run {
    allocate channel c1 type disk;
    backup incremental level 0 tag = Test_Weekly_database format 'O:\rman\backup\Full_Weekly_%d_%s_%p_%t'(database);
    release channel c1;
    configure controlfile autobackup format for device type disk to 'O:\rman\backup\Auto_Ctrl_weekly_%F';
    allocate channel c1 type disk;
    sql 'alter system archive log current';
    BACKUP tag = Test_Weekly_Arch ARCHIVELOG UNTIL TIME 'SYSDATE-7' format 'O:\rman\backup\Archive_weekly_%d_%s_%p_%t';
    DELETE ARCHIVELOG UNTIL TIME 'SYSDATE-7';
    release channel c1;
    After backing up I inserted few records in TEST123 table. And switch current log file.
    Then my database has been corrupted. Now I have last 0 level backup (RMAN) and archive logs files on OS level.
    I am recovering my database with the following commands; but archive logs have not being applied. And my inserted records were not presented in TEST123 table.
    Kindly guide me
    SQL> startup nomount
    CMD> RMAN target=/
    RMAN>set DBID 1168995671
    RMAN>RUN {
    SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'O:\rman\backup\Auto_Ctrl_weekly_%F';
    RESTORE CONTROLFILE from autobackup;
    RMAN> ALTER DATABASE MOUNT;
    RMAN> RESTORE DATABASE CHECK READONLY;
    RMAN> RECOVER DATABASE NOREDO;
    RMAN> restore archivelog all;
    SQL> startup mount
    SQL> alter database backup controlfile to trace;
    SQL> shut immediate
    SQL> startup nomount
    SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS ARCHIVELOG................;
    SQL> alter database open resetlogs
    ---Database altered.
    SQL> select * from TEST123;
    Not record found
    regards;
    Asim

    Dear Khurram;
    Kindly advise where i m worrg???????
    C:\>RMAN target=/
    RMAN> set DBID 1168995671
    executing command: SET DBID
    RMAN> RUN {
    2> SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'O:\rman\backup\Auto_Ctrl_weekly_%F';
    3> RESTORE CONTROLFILE from autobackup;
    4> }
    executing command: SET CONTROLFILE AUTOBACKUP FORMAT
    Starting restore at 27-DEC-07
    using channel ORA_DISK_1
    recovery area destination: O:\rman\backup
    database name (or database unique name) used for search: ORCL
    channel ORA_DISK_1: no autobackups found in the recovery area
    channel ORA_DISK_1: looking for autobackup on day: 20071227
    channel ORA_DISK_1: autobackup found: O:\rman\backup\Auto_Ctrl_weekly_c-11689956
    71-20071227-04
    channel ORA_DISK_1: control file restore from autobackup complete
    output filename=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL
    output filename=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL
    output filename=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL
    Finished restore at 27-DEC-07
    RMAN> ALTER DATABASE MOUNT;
    database mounted
    released channel: ORA_DISK_1
    RMAN> RESTORE DATABASE CHECK READONLY;
    Starting restore at 27-DEC-07
    Starting implicit crosscheck backup at 27-DEC-07
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: sid=155 devtype=DISK
    allocated channel: ORA_DISK_2
    channel ORA_DISK_2: sid=154 devtype=DISK
    Crosschecked 9 objects
    Finished implicit crosscheck backup at 27-DEC-07
    Starting implicit crosscheck copy at 27-DEC-07
    using channel ORA_DISK_1
    using channel ORA_DISK_2
    Finished implicit crosscheck copy at 27-DEC-07
    searching for all files in the recovery area
    cataloging files...
    no files cataloged
    using channel ORA_DISK_1
    using channel ORA_DISK_2
    channel ORA_DISK_1: starting datafile backupset restore
    channel ORA_DISK_1: specifying datafile(s) to restore from backup set
    restoring datafile 00001 to D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF
    restoring datafile 00002 to D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF
    restoring datafile 00003 to D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF
    restoring datafile 00004 to D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF
    restoring datafile 00005 to D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEST.DBF
    restoring datafile 00006 to D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEST2
    channel ORA_DISK_1: reading from backup piece O:\RMAN\BACKUP\FULL_WEEKLY_ORCL_3_
    1_642420573
    channel ORA_DISK_1: restored backup piece 1
    piece handle=O:\RMAN\BACKUP\FULL_WEEKLY_ORCL_3_1_642420573 tag=Test_WEEKLY_DATAB
    ASE
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:46
    Finished restore at 27-DEC-07
    RMAN> restore archivelog all;
    archive log thread 1 sequence 1 is already on disk as file O:\ARCHIVE\ARC00001_0642356125.001
    archive log thread 1 sequence 2 is already on disk as file O:\ARCHIVE\ARC00002_0642356125.001
    archive log thread 1 sequence 3 is already on disk as file O:\ARCHIVE\ARC00003_0642356125.001
    archive log thread 1 sequence 4 is already on disk as file O:\ARCHIVE\ARC00004_0642356125.001
    archive log thread 1 sequence 5 is already on disk as file O:\ARCHIVE\ARC00005_0642356125.001
    archive log thread 1 sequence 6 is already on disk as file O:\ARCHIVE\ARC00006_0642356125.001
    archive log thread 1 sequence 7 is already on disk as file O:\ARCHIVE\ARC00007_0642356125.001
    archive log thread 1 sequence 8 is already on disk as file O:\ARCHIVE\ARC00008_0642356125.001
    archive log thread 1 sequence 9 is already on disk as file O:\ARCHIVE\ARC00009_0642356125.001
    archive log thread 1 sequence 10 is already on disk as file O:\ARCHIVE\ARC00010_0642356125.001
    archive log thread 1 sequence 11 is already on disk as file O:\ARCHIVE\ARC00011_0642356125.001
    archive log thread 1 sequence 12 is already on disk as file O:\ARCHIVE\ARC00012_0642356125.001
    channel ORA_DISK_1: starting archive log restore to default destination
    channel ORA_DISK_1: restoring archive log
    archive log thread=1 sequence=15
    channel ORA_DISK_1: restoring archive log
    archive log thread=1 sequence=16
    channel ORA_DISK_1: restoring archive log
    archive log thread=1 sequence=17
    channel ORA_DISK_1: restoring archive log
    archive log thread=1 sequence=18
    channel ORA_DISK_1: restoring archive log
    archive log thread=1 sequence=19
    channel ORA_DISK_1: restoring archive log
    archive log thread=1 sequence=20
    channel ORA_DISK_1: reading from backup piece O:\RMAN\BACKUP\ARCHIVE_WEEKLY_ORCL_5_1_642420630
    channel ORA_DISK_1: restored backup piece 1
    piece handle=O:\RMAN\BACKUP\ARCHIVE_WEEKLY_ORCL_5_1_642420630 tag=Test_WEEKLY_ARCH
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:08
    Finished restore at 27-DEC-07
    RMAN> ALTER DATABASE OPEN;
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of alter db command at 12/27/2007 10:27:10
    ORA-01152: file 1 was not restored from a sufficiently old backup
    ORA-01110: data file 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF'
    Regards;
    Asim

  • Dataguard physical standby archive log question

    Hi all,
    I will try to keep this simple..
    I have a 4 node RAC primary shipping logs to a 2 node physical standby.
    On the primary when I run 'alter system archive log current' on an instance I only see 1 log being applied on the standby, that is by querying v$archived_log.
    If I run the following on the standby:
    select thread#,sequence#,substr(name,43,70)"NAME",registrar,applied,status,first_time from v$archived_log where first_time
    in
    (select max(first_time) from v$archived_log group by thread#)
    order by thread#
    I get:
    THREAD# SEQUENCE# NAME REGISTR APPLIED S FIRST_TIME
    1 602 thread_1_seq_602.2603.721918617 RFS YES A 17-jun-2010 12:56:58
    2 314 thread_2_seq_314.2609.721918627 RFS NO A 17-jun-2010 12:56:59
    3 311 thread_3_seq_311.2604.721918621 RFS NO A 17-jun-2010 12:57:00
    4 319 thread_4_seq_319.2606.721918625 RFS NO A 17-jun-2010 12:57:00
    Why do we only see the max(sequence#) having been applied and not all of them?
    This is the same no matter how many times I archive the current log files on any of the instances on the primary and also the standby does not have any gaps.
    Hope this is clear..
    any ideas?
    jd

    ok output from gv$archived_log on standby BEFORE 'alter system archive log current' on primary
    THREAD# SEQUENCE# NAME REGISTR APPLIED S FIRST_TIME
    1 679 thread_1_seq_679.1267.722001505 RFS NO A 18-jun-2010 11:58:22
    1 679 thread_1_seq_679.1267.722001505 RFS NO A 18-jun-2010 11:58:22
    2 390 thread_2_seq_390.1314.722001507 RFS NO A 18-jun-2010 11:58:23
    2 390 thread_2_seq_390.1314.722001507 RFS NO A 18-jun-2010 11:58:23
    3 386 thread_3_seq_386.1266.722001505 RFS YES A 18-jun-2010 11:58:22
    3 386 thread_3_seq_386.1266.722001505 RFS YES A 18-jun-2010 11:58:22
    4 393 thread_4_seq_393.1269.722001507 RFS NO A 18-jun-2010 11:58:23
    4 393 thread_4_seq_393.1269.722001507 RFS NO A 18-jun-2010 11:58:23
    Output from v$archived_log on standby AFTER 'alter system archive log current' on primary
    THREAD# SEQUENCE# NAME REGISTR APPLIED S FIRST_TIME
    1 680 thread_1_seq_680.1333.722004227 RFS NO A 18-jun-2010 11:58:29
    1 680 thread_1_seq_680.1333.722004227 RFS NO A 18-jun-2010 11:58:29
    2 391 thread_2_seq_391.1332.722004227 RFS NO A 18-jun-2010 11:58:30
    2 391 thread_2_seq_391.1332.722004227 RFS NO A 18-jun-2010 11:58:30
    3 387 thread_3_seq_387.1271.722004225 RFS NO A 18-jun-2010 11:58:28
    3 387 thread_3_seq_387.1271.722004225 RFS NO A 18-jun-2010 11:58:28
    4 394 thread_4_seq_394.1270.722004225 RFS YES A 18-jun-2010 11:58:29
    4 394 thread_4_seq_394.1270.722004225 RFS YES A 18-jun-2010 11:58:29
    as a reminder we have a 4 node RAC system shipping logs to a 2 node RAC standby. There are no gaps but only one log is ever registered as being applied.
    Why is that? Why arnt all logs registered as being applied?

  • Rman archive logs deltion question..

    Hi All,
    What's the best way to delete archive logs that have been backed up by RMAN? Is there a preferred way? We are looking at the 2 scripts below:
    run {                                                                                    
    allocate channel c1 type disk ;  
    sql 'alter system archive log current'; 
    crosscheck archivelog all; 
    backup AS COMPRESSED BACKUPSET incremental level 1 tag LEVEL1_Wed filesperset 1 database include current controlfile *ARCHIVELOG ALL*; 
    sql 'ALTER DATABASE BACKUP CONTROLFILE TO TRACE';
    crosscheck backup of database; 
    crosscheck backup of controlfile;  
    delete noprompt force obsolete;     
    delete noprompt force expired archivelog all; 
    *delete archivelog until time 'sysdate-3';*   
    delete noprompt force expired backup of database;                                       
    delete noprompt force expired backup of controlfile;                                    
    release channel c1;                                 
    }The above script will back up all archive logs and then it will delete anything that is more than 3 days old. Or, would it better to use the following format:
    run {                                                                                    
    allocate channel c1 type disk ;  
    sql 'alter system archive log current';                                               
    crosscheck archivelog all;                                                           
    backup AS COMPRESSED BACKUPSET incremental level 1 tag LEVEL1_Wed filesperset 1 database include current controlfile *ARCHIVELOG until time 'sysdate-3' DELETE INPUT*; 
    sql 'ALTER DATABASE BACKUP CONTROLFILE TO TRACE';                                       
    crosscheck backup of database;                                                          
    crosscheck backup of controlfile;                                                       
    delete noprompt force obsolete;                                                         
    delete noprompt force expired archivelog all;                       
    delete noprompt force expired backup of database;                                       
    delete noprompt force expired backup of controlfile;                                    
    release channel c1;                                 
    }Can someone please shed some light on this.
    P.S. Sorry can't get the required text to show in bold to highlight the differences in the 2 scripts. Please look for the text between the **.
    Thanks and Regards
    Edited by: rsar001 on Nov 25, 2010 7:45 AM
    Edited by: rsar001 on Nov 25, 2010 7:46 AM

    So the best way would be to setup the archive retention as mentioned above:
    >
    CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 1 TIMES TO DISK;
    >
    Also change the code to the following:
    run {                                                                                    
    allocate channel c1 type disk ;  
    sql 'alter system archive log current'; 
    crosscheck archivelog all; 
    backup AS COMPRESSED BACKUPSET incremental level 1 tag LEVEL1_Wed filesperset 1 database include current controlfile ARCHIVELOG ALL; 
    sql 'ALTER DATABASE BACKUP CONTROLFILE TO TRACE';
    crosscheck backup of database; 
    crosscheck backup of controlfile;  
    delete noprompt force obsolete;     
    delete noprompt force expired archivelog all;     
    delete noprompt force expired backup of database;                                       
    delete noprompt force expired backup of controlfile;                                    
    release channel c1;                                 
    }Would the above suffice? or do we still need to make further adjustments?
    Thanks in advance for all your help.
    Thanks
    Edited by: rsar001 on Nov 25, 2010 10:26 AM

  • Question about only new archive logs backed up in backup

    Hi,
    We are taking daily two online backup. We are running database in ARCHIVELOG mode. We configure database in PRIMARY and PHYSICAL STANDBY mode. Till now, we were taking all archive logs in backup. But it was causing problem of lot of space utilization of disk.
    So based on search in this forum, I am planning to take only new archive logs generated since last backed up using following command.
    BACKUP ARCHIVELOG all not backed up 1 times format '$dir/archivelogs_%s_%t' FORCE;
    I am not sure about how it impact during restore and recovery when we take only new archivelogs in backup.
    We restore database and then after perform always incomplete recovery till latest SCN capture in backup using following commands.
    RESTORE DATABASE;
    RECOVER DATABASE UNTIL SCN $BACKUP_LAST_SCN;
    Do you see any problem/risk of implementing this solution going ahead?
    Please let me provide your thoughts/inputs for this.
    Thanks.
    Shardul

    Hi,
    We are not deleting archive logs from actual location after backup. We keep latest 6 days archive logs at actual location. But here we are planning to put only new archive logs in backup image which were not backed up due to disk size problem.
    For your reference below is our datbase backup RMAN commands. We are taking full database backup.
    run {
    ALLOCATE CHANNEL C1 TYPE DISK;
    delete noprompt archivelog all completed before 'sysdate-5';
    SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
    BACKUP INCREMENTAL LEVEL=0 CUMULATIVE format '$dir/level0_%u' DATABASE include current controlfile
    for standby force;
    SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
    BACKUP ARCHIVELOG all not backed up 1 times format '$dir/archivelogs_%s_%t' FORCE;
    BACKUP CURRENT CONTROLFILE format '$dir/control_primary' FORCE;
    Then in this polich do you see any problem when we restore database as PRIMARY or PHYSICAL STANDBY on server. We are using Oracle 10.2.0.3.

  • RMAN-20242: specification does not match any archive log in the recovery ca

    Hi,
    I'm working with an 9i Oracle RAC (yes, I know this version is out of support...). I'm launching my backup from node 1 with this script
    run {
    sql 'alter system switch logfile'
    sql 'alter system archive log current'
    allocate channel TSM1 type 'sbt_tape' connect *
    parms='ENV=(TDPO_OPTFILE=/home/adsmadm/rman_INF01T01/opt/tdpo.opt)'
    allocate channel TSM2 type 'sbt_tape' connect *
    parms='ENV=(TDPO_OPTFILE=/home/adsmadm/rman_INF01T01/opt/tdpo.opt)'
    backup
    format 'brman_arch_%s_%p'
    (archivelog like '/logs/bbdd/oracle/INF01T01/archiver/%' channel TSM1 delete input )
    (archivelog like '/logs/bbdd/oracle/INF01T03/archiver/%' channel TSM2 delete input )
    release channel TSM2
    release channel TSM1
    And fail with this error:
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of backup command at 08/13/2012 22:36:43
    RMAN-06004: ORACLE error from recovery catalog database: RMAN-20242: specification does not match any archive log in the recovery catalog
    I've take a look to the archives directories and both nodes have archives:
    ora10g:/opt/ora10g > ls -lrt /logs/bbdd/oracle/INF01T01/archiver
    total 97896
    -rw-r----- 1 ora10g dba 2048 Aug 13 22:36 T0001S00000061440648489222.ARC
    -rw-rw---- 1 ora10g dba 38132224 Aug 13 22:36 T0001S00000061430648489222.ARC
    -rw-r----- 1 ora10g dba 11984896 Aug 13 22:36 T0002S00000044040648489222.ARC
    ora10g:/opt/ora10g > ls -lrt /logs/bbdd/oracle/INF01T03/archiver
    total 392984
    -rw-r----- 1 ora10g dba 49364992 Mar 24 2009 T0002S00000007020648489222.ARC
    -rw-r----- 1 ora10g dba 49364992 Mar 25 2009 T0002S00000007030648489222.ARC
    -rw-rw---- 1 ora10g dba 19314688 Mar 25 2009 T0002S00000007040648489222.ARC
    -rw-rw---- 1 ora10g dba 4733952 Mar 25 2009 T0002S00000007050648489222.ARC
    -rw-rw---- 1 ora10g dba 4608 Apr 09 2009 T0002S00000007440648489222.ARC
    -rw-rw---- 1 ora10g dba 2541056 Sep 26 2009 T0002S00000015420648489222.ARC
    -rw-rw---- 1 ora10g dba 49373184 Sep 28 2009 T0002S00000015430648489222.ARC
    -rw-rw---- 1 ora10g dba 3410432 Feb 11 2010 T0002S00000018680648489222.ARC
    -rw-rw---- 1 ora10g dba 599552 Feb 12 2010 T0002S00000018710648489222.ARC
    -rw-rw---- 1 ora10g dba 6574080 Mar 03 2010 T0002S00000019200648489222.ARC
    -rw-rw---- 1 ora10g dba 1663488 Mar 08 2010 T0002S00000019340648489222.ARC
    -rw-rw---- 1 ora10g dba 431104 Apr 07 2010 T0002S00000020160648489222.ARC
    -rw-rw---- 1 ora10g dba 13811712 Apr 19 2010 T0002S00000020460648489222.ARC
    I've tried to made a crosscheck but, only found node1 archives:
    RMAN> change archivelog all crosscheck;
    validation succeeded for archived log
    archive log filename=/logs/bbdd/oracle/INF01T01/archiver/T0001S00000061430648489222.ARC recid=10685 stamp=791246196
    validation succeeded for archived log
    archive log filename=/logs/bbdd/oracle/INF01T01/archiver/T0001S00000061440648489222.ARC recid=10686 stamp=791246196
    validation succeeded for archived log
    archive log filename=/logs/bbdd/oracle/INF01T01/archiver/T0002S00000044040648489222.ARC recid=10687 stamp=791246197
    Crosschecked 3 objects
    Any idea about the way to solve it?
    Thanks in advance!
    dbajug

    Hi,
    Connect to target through rman
    crosscheck archivelog all;
    Then re run the backup. This will work if those two locations provided are archive log destinations.
    In case the issue still persists then
    Connect to target through rman
    catalog start with '/logs/bbdd/oracle/INF01T01/archiver/';
    catalog start with '/logs/bbdd/oracle/INF01T03/archiver/';
    Then re run the backup.
    Thanks,
    Vivek
    Edited by: 952807 on Aug 16, 2012 5:21 PM

  • RMAN failure for "archive-log ... not found in controlfile"

    Recovery Manager: Release 8.1.6.0.0 - Production
    RMAN> connect target sys/XXXX@cldb;
    2> connect catalog rman/XXXX@rmandb1;
    3>
    4> resync catalog;
    5>
    6> # Backup the database
    7> run {
    8> allocate channel ch1 type disk;
    9> backup incremental level 0 format
    10> '/tools/cm/clearquest/orabackup/cldb.cqdbserver/backup/backup_%t_%s_%p' database;
    11> sql 'alter system archive log current';
    12> }
    13>
    14> # Backup the archived redo logs
    15> run {
    16> allocate channel ch1 type disk;
    17>
    18> backup incremental level 0 format
    19> '/tools/cm/clearquest/orabackup/cldb.cqdbserver/backup/archivelog_%t_%s_%p' archivelog all;
    20> sql 'alter system archive log current';
    21> }
    22>
    23> # Backup the control file
    24> run {
    25> allocate channel ch1 type disk;
    26> sql 'alter database backup controlfile to trace';
    27> copy current controlfile to
    28> '/tools/cm/clearquest/orabackup/cldb.cqdbserver/controlfile.bak';
    29> }
    30>
    31>
    RMAN-06005: connected to target database: CLDB (DBID=1292102281)
    RMAN-06008: connected to recovery catalog database
    RMAN-03022: compiling command: resync
    RMAN-03023: executing command: resync
    RMAN-08002: starting full resync of recovery catalog
    RMAN-08004: full resync complete
    RMAN-03022: compiling command: allocate
    RMAN-03023: executing command: allocate
    RMAN-08030: allocated channel: ch1
    RMAN-08500: channel ch1: sid=17 devtype=DISK
    RMAN-03022: compiling command: backup
    RMAN-03023: executing command: backup
    RMAN-08008: channel ch1: starting incremental level 0 datafile backupset
    RMAN-08502: set_count=816 set_stamp=422358010 creation_time=22-FEB-01
    RMAN-08010: channel ch1: specifying datafile(s) in backupset
    RMAN-08522: input datafile fno=00001 name=/opt/orabase/oradata/cldb/system01.dbf
    ---snip----
    more like this
    ---snip----
    RMAN-08013: channel ch1: piece 1 created
    RMAN-08503: piece handle=/tools/cm/clearquest/orabackup/cldb.cqdbserver/backup/backup_422358010_816_1 comment=NONE
    RMAN-08525: backup set complete, elapsed time: 00:01:46
    RMAN-03023: executing command: partial resync
    RMAN-08003: starting partial resync of recovery catalog
    RMAN-08005: partial resync complete
    RMAN-03022: compiling command: sql
    RMAN-06162: sql statement: alter system archive log current
    RMAN-03023: executing command: sql
    RMAN-08031: released channel: ch1
    RMAN-03022: compiling command: allocate
    RMAN-03023: executing command: allocate
    RMAN-08030: allocated channel: ch1
    RMAN-08500: channel ch1: sid=17 devtype=DISK
    RMAN-03022: compiling command: backup
    RMAN-03025: performing implicit partial resync of recovery catalog
    RMAN-03023: executing command: partial resync
    RMAN-08003: starting partial resync of recovery catalog
    RMAN-08005: partial resync complete
    RMAN-03023: executing command: backup
    RMAN-08009: channel ch1: starting archivelog backupset
    RMAN-08502: set_count=817 set_stamp=422358179 creation_time=22-FEB-01
    RMAN-08014: channel ch1: specifying archivelog(s) in backup set
    RMAN-08504: input archivelog thread=1 sequence=85 recid=2610 stamp=422352397
    RMAN-08504: input archivelog thread=1 sequence=86 recid=2611 stamp=422352397
    ----snip----
    more similar stuff here
    ----snip----
    RMAN-08504: input archivelog thread=1 sequence=140 recid=2732 stamp=422358121
    RMAN-08013: channel ch1: piece 1 created
    RMAN-08503: piece handle=/tools/cm/clearquest/orabackup/cldb.cqdbserver/backup/archivelog_422358179_817_1 comment=NONE
    RMAN-08525: backup set complete, elapsed time: 00:00:17
    RMAN-08009: channel ch1: starting archivelog backupset
    RMAN-08502: set_count=818 set_stamp=422358197 creation_time=22-FEB-01
    RMAN-08014: channel ch1: specifying archivelog(s) in backup set
    ----snip----
    more like this
    ----snip----
    RMAN-08504: input archivelog thread=1 sequence=164 recid=2756 stamp=422358123
    RMAN-08504: input archivelog thread=1 sequence=165 recid=2757 stamp=422358123
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAG E STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03006: non-retryable error occurred during execution of command: backup
    RMAN-07004: unhandled exception during command execution on channel ch1
    RMAN-10035: exception raised in RPC: ORA-19571: archived-log recid 2011 stamp 419161314 not found in controlfile
    RMAN-10031: ORA-19571 occurred during call to DBMS_BACKUP_RESTORE.BACKUPARCHIVEDLOG
    I added the resync catalog command to the backup. But I am still getting this error. What is happening? I have the control_file_record_keep_time = 14 in the paramater file. Do I need to change this to something greater?
    null

    The error message is pointing to an inconsistency between what RMAN "thinks"
    should be there and what is in control files.
    There are a few things you can try to do
    1. Compare V$LOG, V$LOGFILE, etc. Some of these views are based on control files
    2. Shutdown and restart the instance.
    This may help in synchronizing control files
    with internal structures.
    3. Trace RMAN session using oradebug and even 10046 to find out what it is doing
    4. Dump entire controlfile to trace using
    alter session set events 'immediate trace name controlf level 10';
    Or dump loghist only
    alter session set events 'immediate trace name loghist level 4';
    This will dump 2**level entries.
    5. Re-create controlfiles with CREATE CONTROLFILE
    Regards,
    Sev

  • Archive Log file size

    I am using Oracle database 9.2.0.1.0, My OS is Linux AS4 Update version.
    My database is in archive log mode, the archive file size generated on disk is 100 MB. I want to monitor the reason that why the size of redo generated is too big.
    Kindly suggest.
    Regards

    Archived log file size will always be the same size as redo log or less than the redo log size (but never bigger than redo log size)
    ARCHIVE_LAG_TARGET is the reason (apart from manual archiving ALTER SYSTEM ARCHIVE LOG CURRENT/ALL) why you see archived logs with lesser size than redo log
    why  archive log file size constanly change?

  • About archive log issue

    DB version: 11.1.0.7
    when I issue cmd " alter system archive log current", the alertlog raise error "Thread 1 cannot allocate new log, sequence 149, Private strand flush not complete".
    I think it's normal, because in the log file , here some dirty data have NOT been written to the data_files, so it can raise the error Private strand flush not complete.
    BUT in my point, when I issue the cmd "alter system checkpoint" and then, subsequently, I issue the " alter system archive log current", there shoud not raise any error" becasue the dirty data already been written via the cmd "alter system checkpoint". but in the alertlog the error still here (Private strand flush not complete).
    that's why, How can I understand that. thanks!

    To understand it, please check Doc 372557.1 Alert Log Messages: Private Strand Flush Not Complete
    and
    cannot allocate new log&Private strand flush not complete
    Edited by: Fran on 25-jun-2012 1:07

Maybe you are looking for