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 SwartzlanderThere'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?
ThanksYou'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. -
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;
AsimDear 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?
jdok 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 AMSo 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.
ShardulHi,
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!
dbajugHi,
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?
nullThe 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 -
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.
RegardsArchived 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? -
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
-
How to update iPad 2 to IOS 5.1.5
How do i update my ipad 2 to IOS 5.1.5?
-
My ipod touch connects to the computer but is not recognized by itunes?! aghh
I connected my Ipod touch to the computer with 3 different USB leads, tried 3 different holes and it wont be recognised by itunes!? i restarted my ipod but i don't know what to do !! The computer recognises my ipod because it asks me if i want to imp
-
The problem in using object = 0090 to create sales order in LSMW?
who can tell where is the problem "No logical path has been specified" when I doing "specify files"? tks in advance.
-
I would like new tabs to open at the beginning of the tab line - not near the end.
-
After updating to IOS 7.1 my us holidays doubled in my calendar. How do I get rid of one of them?