Archive log directory full
Hello all,
I had a problem where my archive log dir filled up last night and corrupted a datafile.
I haave tried to do an incomplete recovery until just before the directory filled.
When running this recovery I get errors:
RMAN-03022: compiling command: IRESTORE
RMAN-03026: error recovery releasing channel resources
RMAN-08031: released channel: ch1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure during compilation of command
RMAN-03013: command type: restore
RMAN-03002: failure during compilation of command
RMAN-03013: command type: IRESTORE
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 19 found to restore
RMAN-06023: no backup or copy of datafile 6 found to restore
RMAN-06023: no backup or copy of datafile 4 found to restore
RMAN-06023: no backup or copy of datafile 3 found to restore
I have Identified these datafiles as tmp, and rollback segment datafiles which I have not been backingup, because I didn't see the need to.
can anybody give advice on how to solve this issue.
Thanks,
Lenny
I ended up attempting a restore of the corrupt corrupt, and it worked. The database is up and running properly. Since I have done a full backup before releasing access to the company.
Thanks,
Lenny
Similar Messages
-
Why archive log is full so fast?
Hi All,
I have installed 10g RAC on RHEL4 using MSA1000 as a shared storage. and using ASM for database files and archive log files (external reduandancy) with RAID5. I have allocated 100GB for archive log files. database also created successfully with archive log enabled. After that i import 3 schemas in the RAC db each of 2GB size. The import was successful and when i try to connect the schema using Sqlplus it will "archive error". archive log space was full. i checked in asmcmd also, the 100GB fully occupied. My doubt is..How come the 100GB space is filled so fast?
Can anybody help me?
Thanks,
Praveen.Hi Don,
No error, just code from an older release! Right ?
Not found any reference of the TIME column from V$LOG_HISTORY into the 8i and 9i doc. Maybe from Oracle 7 ?
Connected to:
Oracle8i Enterprise Edition Release 8.1.7.4.1 - Production
With the Partitioning option
JServer Release 8.1.7.4.1 - Production
SQL> select substr(time,1,5) day,
2 to_char(sum(decode(substr(time,10,2),'00',1,0)),'99') "00",
3 to_char(sum(decode(substr(time,10,2),'01',1,0)),'99') "01",
4 to_char(sum(decode(substr(time,10,2),'02',1,0)),'99') "02",
5 to_char(sum(decode(substr(time,10,2),'03',1,0)),'99') "03",
6 to_char(sum(decode(substr(time,10,2),'04',1,0)),'99') "04",
7 to_char(sum(decode(substr(time,10,2),'05',1,0)),'99') "05",
8 to_char(sum(decode(substr(time,10,2),'06',1,0)),'99') "06",
9 to_char(sum(decode(substr(time,10,2),'07',1,0)),'99') "07",
10 to_char(sum(decode(substr(time,10,2),'08',1,0)),'99') "08",
11 to_char(sum(decode(substr(time,10,2),'09',1,0)),'99') "09",
12 to_char(sum(decode(substr(time,10,2),'10',1,0)),'99') "10",
13 to_char(sum(decode(substr(time,10,2),'11',1,0)),'99') "11",
14 to_char(sum(decode(substr(time,10,2),'12',1,0)),'99') "12",
15 to_char(sum(decode(substr(time,10,2),'13',1,0)),'99') "13",
16 to_char(sum(decode(substr(time,10,2),'14',1,0)),'99') "14",
17 to_char(sum(decode(substr(time,10,2),'15',1,0)),'99') "15",
18 to_char(sum(decode(substr(time,10,2),'16',1,0)),'99') "16",
19 to_char(sum(decode(substr(time,10,2),'17',1,0)),'99') "17",
20 to_char(sum(decode(substr(time,10,2),'18',1,0)),'99') "18",
21 to_char(sum(decode(substr(time,10,2),'19',1,0)),'99') "19",
22 to_char(sum(decode(substr(time,10,2),'20',1,0)),'99') "20",
23 to_char(sum(decode(substr(time,10,2),'21',1,0)),'99') "21",
24 to_char(sum(decode(substr(time,10,2),'22',1,0)),'99') "22",
25 to_char(sum(decode(substr(time,10,2),'23',1,0)),'99') "23"
26 from v$log_history
27 group by substr(time,1,5);
group by substr(time,1,5)
ERROR at line 27:
ORA-00904: invalid column name
SQL> desc v$log_history
Name Null? Type
RECID NUMBER
STAMP NUMBER
THREAD# NUMBER
SEQUENCE# NUMBER
FIRST_CHANGE# NUMBER
FIRST_TIME DATE
NEXT_CHANGE# NUMBER
SQL>
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production
SQL> select substr(time,1,5) day,
2 to_char(sum(decode(substr(time,10,2),'00',1,0)),'99') "00",
3 to_char(sum(decode(substr(time,10,2),'01',1,0)),'99') "01",
4 to_char(sum(decode(substr(time,10,2),'02',1,0)),'99') "02",
5 to_char(sum(decode(substr(time,10,2),'03',1,0)),'99') "03",
6 to_char(sum(decode(substr(time,10,2),'04',1,0)),'99') "04",
7 to_char(sum(decode(substr(time,10,2),'05',1,0)),'99') "05",
8 to_char(sum(decode(substr(time,10,2),'06',1,0)),'99') "06",
9 to_char(sum(decode(substr(time,10,2),'07',1,0)),'99') "07",
10 to_char(sum(decode(substr(time,10,2),'08',1,0)),'99') "08",
11 to_char(sum(decode(substr(time,10,2),'09',1,0)),'99') "09",
12 to_char(sum(decode(substr(time,10,2),'10',1,0)),'99') "10",
13 to_char(sum(decode(substr(time,10,2),'11',1,0)),'99') "11",
14 to_char(sum(decode(substr(time,10,2),'12',1,0)),'99') "12",
15 to_char(sum(decode(substr(time,10,2),'13',1,0)),'99') "13",
16 to_char(sum(decode(substr(time,10,2),'14',1,0)),'99') "14",
17 to_char(sum(decode(substr(time,10,2),'15',1,0)),'99') "15",
18 to_char(sum(decode(substr(time,10,2),'16',1,0)),'99') "16",
19 to_char(sum(decode(substr(time,10,2),'17',1,0)),'99') "17",
20 to_char(sum(decode(substr(time,10,2),'18',1,0)),'99') "18",
21 to_char(sum(decode(substr(time,10,2),'19',1,0)),'99') "19",
22 to_char(sum(decode(substr(time,10,2),'20',1,0)),'99') "20",
23 to_char(sum(decode(substr(time,10,2),'21',1,0)),'99') "21",
24 to_char(sum(decode(substr(time,10,2),'22',1,0)),'99') "22",
25 to_char(sum(decode(substr(time,10,2),'23',1,0)),'99') "23"
26 from v$log_history
27 group by substr(time,1,5);
group by substr(time,1,5)
ERROR at line 27:
ORA-00904: "TIME": invalid identifier
SQL> desc v$log_history
Name Null? Type
RECID NUMBER
STAMP NUMBER
THREAD# NUMBER
SEQUENCE# NUMBER
FIRST_CHANGE# NUMBER
FIRST_TIME DATE
NEXT_CHANGE# NUMBER
SQL> Well, Gints has already check the doc.
To be fair, I would agree that could be a nightmare to maintain a bunch of scripts through different release, but at least see the evidence, on that case, on the age of the scritp if it was tested a day.
Nicolas.
Message was edited by:
N. Gasparotto -
Archive Log vs Full Backup Concept
Hi,
I just need some clarification on how backups and archive logs work. Lets say starting at 1PM I have archive logs 1,2,3,4,5 and then I perform a full backup at 6PM.
Then I resume generating archive logs at 6PM to get logs 6,7,8,9,10. I then stop at 11PM.
If my understanding is correct, the archive logs should allow me to restore oracle to a point in time anywhere between 1PM and 11PM. But if I only have the full backup then I can only restore to a single point, which is 6PM. Is my understanding correct?
Do the archive logs only get applied to the datafiles when the backup occurs or only when a restore occurs? It doesn't seem like the archive logs get applied on the fly.
Thanks in advance.thelok wrote:
Thanks for the great explanation! So I can do a point in time restore from any time since the datafiles have last been written (or from when I have the last set of backed up datafiles plus the archive logs). From what you are saying, I can force the datafiles to be written from the redo logs (by doing a checkpoint with "alter set archive log current" or "backup database plus archivelog"), and then I can delete all the archive logs that have a SCN less than the checkpoint SCN on the datafiles. Is this true? This would be for the purposes of preserving disk space.Hi,
See this example. I hope this explain your doubt.
# My current date is 06-11-2011 17:15
# I not have backup of this database
# My retention policy is to have 1 backup
# I start listing archive logs.
RMAN> list archivelog all;
using target database control file instead of recovery catalog
List of Archived Log Copies
Key Thrd Seq S Low Time Name
29 1 8 A 29-10-2011 12:01:58 +HR/dbhr/archivelog/2011_10_31/thread_1_seq_8.399.766018837
30 1 9 A 31-10-2011 23:00:30 +HR/dbhr/archivelog/2011_11_03/thread_1_seq_9.409.766278025
31 1 10 A 03-11-2011 23:00:23 +HR/dbhr/archivelog/2011_11_04/thread_1_seq_10.391.766366105
32 1 11 A 04-11-2011 23:28:23 +HR/dbhr/archivelog/2011_11_06/thread_1_seq_11.411.766516065
33 1 12 A 05-11-2011 23:28:49 +HR/dbhr/archivelog/2011_11_06/thread_1_seq_12.413.766516349
## See I have archive logs from time "29-10-2011 12:01:58" until "05-11-2011 23:28:49" but I dont have any backup of database.
# So I perfom backup of database including archive logs.
RMAN> backup database plus archivelog delete input;
Starting backup at 06-11-2011 17:15:21
## Note above RMAN forcing archive current log, this archivelog generated will be usable only for previous backup.
## Is not my case... I don't have backup of database.
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=159 devtype=DISK
channel ORA_DISK_1: starting archive log backupset
channel ORA_DISK_1: specifying archive log(s) in backup set
input archive log thread=1 sequence=8 recid=29 stamp=766018840
input archive log thread=1 sequence=9 recid=30 stamp=766278027
input archive log thread=1 sequence=10 recid=31 stamp=766366111
input archive log thread=1 sequence=11 recid=32 stamp=766516067
input archive log thread=1 sequence=12 recid=33 stamp=766516350
input archive log thread=1 sequence=13 recid=34 stamp=766516521
channel ORA_DISK_1: starting piece 1 at 06-11-2011 17:15:23
channel ORA_DISK_1: finished piece 1 at 06-11-2011 17:15:38
piece handle=+FRA/dbhr/backupset/2011_11_06/annnf0_tag20111106t171521_0.268.766516525 tag=TAG20111106T171521 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:16
channel ORA_DISK_1: deleting archive log(s)
archive log filename=+HR/dbhr/archivelog/2011_10_31/thread_1_seq_8.399.766018837 recid=29 stamp=766018840
archive log filename=+HR/dbhr/archivelog/2011_11_03/thread_1_seq_9.409.766278025 recid=30 stamp=766278027
archive log filename=+HR/dbhr/archivelog/2011_11_04/thread_1_seq_10.391.766366105 recid=31 stamp=766366111
archive log filename=+HR/dbhr/archivelog/2011_11_06/thread_1_seq_11.411.766516065 recid=32 stamp=766516067
archive log filename=+HR/dbhr/archivelog/2011_11_06/thread_1_seq_12.413.766516349 recid=33 stamp=766516350
archive log filename=+HR/dbhr/archivelog/2011_11_06/thread_1_seq_13.414.766516521 recid=34 stamp=766516521
Finished backup at 06-11-2011 17:15:38
## RMAN finish backup of Archivelog and Start Backup of Database
## My backup start at "06-11-2011 17:15:38"
Starting backup at 06-11-2011 17:15:38
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00001 name=+HR/dbhr/datafile/system.386.765556627
input datafile fno=00003 name=+HR/dbhr/datafile/sysaux.396.765556627
input datafile fno=00002 name=+HR/dbhr/datafile/undotbs1.393.765556627
input datafile fno=00004 name=+HR/dbhr/datafile/users.397.765557979
input datafile fno=00005 name=+BFILES/dbhr/datafile/bfiles.257.765542997
channel ORA_DISK_1: starting piece 1 at 06-11-2011 17:15:39
channel ORA_DISK_1: finished piece 1 at 06-11-2011 17:16:03
piece handle=+FRA/dbhr/backupset/2011_11_06/nnndf0_tag20111106t171539_0.269.766516539 tag=TAG20111106T171539 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:24
Finished backup at 06-11-2011 17:16:03
## And finish at "06-11-2011 17:16:03", so I can recovery my database from this time.
## I will need archivelogs (transactions) which was generated during backup of database.
## Note during backup some blocks are copied others not. The SCN is inconsistent state.
## To make it consistent I need apply archivelog which have all transactions recorded.
## Starting another backup of archived log generated during backup.
Starting backup at 06-11-2011 17:16:04
## So automatically RMAN force another "checkpoint" after backup finished,
## forcing archive current log, because this archivelog have all transactions to bring database in a consistent state.
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting archive log backupset
channel ORA_DISK_1: specifying archive log(s) in backup set
input archive log thread=1 sequence=14 recid=35 stamp=766516564
channel ORA_DISK_1: starting piece 1 at 06-11-2011 17:16:05
channel ORA_DISK_1: finished piece 1 at 06-11-2011 17:16:06
piece handle=+FRA/dbhr/backupset/2011_11_06/annnf0_tag20111106t171604_0.272.766516565 tag=TAG20111106T171604 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
channel ORA_DISK_1: deleting archive log(s)
archive log filename=+HR/dbhr/archivelog/2011_11_06/thread_1_seq_14.414.766516565 recid=35 stamp=766516564
Finished backup at 06-11-2011 17:16:06
## Note: I can recover my database from time "06-11-2011 17:16:03" (finished backup full)
## until "06-11-2011 17:16:04" (last archivelog generated) that is my recover window in this scenary.
## Listing Backup I have:
## Archive Logs in backupset before backup full start - *BP Key: 40*
## Backup Full database in backupset - *BP Key: 41*
## Archive Logs in backupset after backup full stop - *BP Key: 42*
RMAN> list backup;
List of Backup Sets
===================
BS Key Size Device Type Elapsed Time Completion Time
40 196.73M DISK 00:00:15 06-11-2011 17:15:37
*BP Key: 40* Status: AVAILABLE Compressed: NO Tag: TAG20111106T171521
Piece Name: +FRA/dbhr/backupset/2011_11_06/annnf0_tag20111106t171521_0.268.766516525
List of Archived Logs in backup set 40
Thrd Seq Low SCN Low Time Next SCN Next Time
1 8 766216 29-10-2011 12:01:58 855033 31-10-2011 23:00:30
1 9 855033 31-10-2011 23:00:30 896458 03-11-2011 23:00:23
1 10 896458 03-11-2011 23:00:23 937172 04-11-2011 23:28:23
1 11 937172 04-11-2011 23:28:23 976938 05-11-2011 23:28:49
1 12 976938 05-11-2011 23:28:49 1023057 06-11-2011 17:12:28
1 13 1023057 06-11-2011 17:12:28 1023411 06-11-2011 17:15:21
BS Key Type LV Size Device Type Elapsed Time Completion Time
41 Full 565.66M DISK 00:00:18 06-11-2011 17:15:57
*BP Key: 41* Status: AVAILABLE Compressed: NO Tag: TAG20111106T171539
Piece Name: +FRA/dbhr/backupset/2011_11_06/nnndf0_tag20111106t171539_0.269.766516539
List of Datafiles in backup set 41
File LV Type Ckp SCN Ckp Time Name
1 Full 1023422 06-11-2011 17:15:39 +HR/dbhr/datafile/system.386.765556627
2 Full 1023422 06-11-2011 17:15:39 +HR/dbhr/datafile/undotbs1.393.765556627
3 Full 1023422 06-11-2011 17:15:39 +HR/dbhr/datafile/sysaux.396.765556627
4 Full 1023422 06-11-2011 17:15:39 +HR/dbhr/datafile/users.397.765557979
5 Full 1023422 06-11-2011 17:15:39 +BFILES/dbhr/datafile/bfiles.257.765542997
BS Key Size Device Type Elapsed Time Completion Time
42 3.00K DISK 00:00:02 06-11-2011 17:16:06
*BP Key: 42* Status: AVAILABLE Compressed: NO Tag: TAG20111106T171604
Piece Name: +FRA/dbhr/backupset/2011_11_06/annnf0_tag20111106t171604_0.272.766516565
List of Archived Logs in backup set 42
Thrd Seq Low SCN Low Time Next SCN Next Time
1 14 1023411 06-11-2011 17:15:21 1023433 06-11-2011 17:16:04
## Here make sense what I trying explain
## As I don't have backup of database before of my Last backup, all archivelogs generated before of my backup full is useless.
## Deleting what are obsolete in my env, RMAN choose backupset 40 (i.e all archived logs generated before my backup full)
RMAN> delete obsolete;
RMAN retention policy will be applied to the command
RMAN retention policy is set to redundancy 1
using channel ORA_DISK_1
Deleting the following obsolete backups and copies:
Type Key Completion Time Filename/Handle
*Backup Set 40* 06-11-2011 17:15:37
Backup Piece 40 06-11-2011 17:15:37 +FRA/dbhr/backupset/2011_11_06/annnf0_tag20111106t171521_0.268.766516525
Do you really want to delete the above objects (enter YES or NO)? yes
deleted backup piece
backup piece handle=+FRA/dbhr/backupset/2011_11_06/annnf0_tag20111106t171521_0.268.766516525 recid=40 stamp=766516523
Deleted 1 objectsIn the above example, I could before starting the backup run "delete archivelog all" because they would not be needed, but to show the example I follow this unnecessary way. (backup archivelog and delete after)
Regards,
Levi Pereira
Edited by: Levi Pereira on Nov 7, 2011 1:02 AM -
Staging server archive log full
Hi ,
i have encountered my staging server having archive log full which i do not understand.
i hope anyone can help clarify my doubts
Production server : oracle 10G , RedHat
Staging Server : oracle 10G , runnings on windows
source server : DB2
the staging server is simply a link between the Production server & db2
i am running my procedures on the production server which is getting db2's data via the staging server thru dblink
i have encountered the error : ORA-00257 : archiver error : connect internal only, until freed when i ran some recovery which involved some 20M to 40M records being loaded at the same time
what i do not understand is why would the Oracle running on windows have its archive log full when it's just a link betw the production and db2
pls advise
tks & rgdsJust go to the archivl log destination and delete some/all of the archive logs then I think the problem will be resolved.
OR
connect to RMAN then run
run {
allocate channel ch1 device type disk;
backup format '/u04/rman_backup/RMAN_ARCH_<%s:%t:%p>.bkp' archivelog all delete input;
It will take the backup of your all archivelog and then delete the archive logs from your current archive log directory.
Regards
Asif Kabir -
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 -
Finding relevant Archive log number
hi,
The setup is a oracle 10g database running on solaris 10 and its in archive log mode. this is a development setup
The archive log directory now contains archives from the data of creation of the database. All schemas containing data have been dropped and recreated by use of expdp 3-4 times so far for refreshing the data purposes, however there is no track of the date of refresh.
I am under the assumption that the archive logs prior to the recreation of the schemas are not going to be used.
is there any way to identify a archive log number, so that i can remove all the archive logs prior to this number.
Please share ur advice on this.Hi,
I am under the assumption that the archive logs prior to the recreation of the schemas are not going to be used.
AFAIK no, there is no way. but you have one more option.
1. take database backup now and remove all the archive log before backup.
Regards,
Taj -
Backup and Recovery from Archive Log
Dear all,
I implemented hot backup with oracle9i and
Can anybody suggest me how to backup and recovery archive log ?
Thanks for advance.
Charaassuming you are using RMAN for backup -
backup ( archivelog all );
backup ( archivelog all delete input ); - to delete from file system.
If you are not using RMAN but backup using a script which puts the tablespaces in hot backup mode then you just need to backup archive log directory.
The archive logs are required when you need to do a database recovery. You don't recover archive log files.
rgds -
Are there any possible reason RMAN generates some corrupt archive log files
Dear all,
Are there any possible reason RMAN generates some corrupt archive log files?
Best Regards,
AmyBecause I try to perform daily backup at lunch time and found out it takes more than 1 hour had no any progress. Normally we take around 40 minus. The following is the log file:
RMAN> Run
2> {
3> CONFIGURE CONTROLFILE AUTOBACKUP ON;
4> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/db/backup/RMAN/%F.bck';
5> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
6> allocate channel ch1 type disk format '/u03/db/backup/RMAN/backup_%d_%t_%s_%p_%U.bck';
7> backup incremental level 1 cumulative database plus archivelog delete all input;
8> backup current controlfile;
9> backup spfile;
10> release channel ch1;
11> }
12> allocate channel for maintenance type disk;
13> delete noprompt obsolete;
14> delete noprompt archivelog all backed up 2 times to disk;
15>
16>
using target database controlfile instead of recovery catalog
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/db/backup/RMAN/%F.bck';
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/db/backup/RMAN/%F.bck';
new RMAN configuration parameters are successfully stored
old RMAN configuration parameters:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
new RMAN configuration parameters:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
new RMAN configuration parameters are successfully stored
allocated channel: ch1
channel ch1: sid=99 devtype=DISK
Starting backup at 31-MAR-09
current log archived
After that I go to archive log directory "/u02/oracle/uat/uatdb/9.2.0/dbs" and use ls -lt command to see how many archive logs and my screen just hang. After we found out that we cannot use ls -lt command to read arch1_171.dbf
archive log, the rest of archive logs able to use ls -lt command.
We cannot delete this file as well. We shutdown database abort and perform check disk...... and fix the disk error and then open database again. Everything seems back to normal and we can use ls -lt command to read arch1_171.dbf.
The strange problem is we have the same problem in Development and Production..... one ore more archive logs seems to be corrupted under the same directories /u02/oracle/uat/uatdb/9.2.0/dbs.
Does anyone encounter the same problem?
Amy -
Full Backups, Level 0 Backups, and Archived Logs
We have an active Oracle server and a standby Oracle server. We keep the standby database up to date with a cron script. The script tells the active database to do 'alter system switch logfile;'. We then rsync the archived logs to our standby server and have rman apply them.
This works everyday except Monday (of course!) and it only recently started failing on Mondays. The only change was that our Sunday backups used to be 'Full' backups but are now 'level 0' backups. Ever since that change, the first attempt to apply the archived logs to the standby server after the level 0 is taken on the active server gives us something like this:
ORA-00308: cannot open archived log
'/opt/oracle/flash_recovery_area/ORCL/archivelog/2012_04_16/o1_mf_1_60519_%u_.arc'
ORA-27037: unable to obtain file status
Of course, the file is not there and doesn't exist on the active server either. And of course, the nightly level1 backups fo not give us problems applying archived logs to the standby database the rest of the week.
The only way I know to recover from this is to apply the level 0 backup or take a new level 0 and apply it. After that, all subsequent archive logs just work. Any idea why changing from Full to Level 0 would break this? The Oracle docs insist that a Level 0 is identical to a Full except that level 1s can reference them as parents. This simply cannot be true based on what I'm seeing! I really want to keep the level 0 backups in play if possible. Level 1 cumulatives wont be useful without them.Here are the RMAN settings:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/opt/oracle/102/dbs/snapcf_ORCL.f'; # default
I'm not sure how changing ARCHIVELOG BACKUP COPIES would help. Can you give me a little more information about how that setting comes into play in this situation?
I actually don't want an archive deletion policy here. We have this done in script three days after the needed archive logs have been applied. Is it possible that the we're deleting archivelogs too soon? Would we ever need to reach back in time to previously applied archive logs to apply new ones?
The %u does resolve, but this message isn't showing it. Here is that same log entry plus a few previous entries that show it does resolve.
ORA-00279: change 1284618956 generated at 04/13/2012 15:30:05 needed for thread
1
ORA-00289: suggestion :
/opt/oracle/flash_recovery_area/ORCL/archivelog/2012_04_16/o1_mf_1_60518_%u_.arc
ORA-00280: change 1284618956 for thread 1 is in sequence #60518
ORA-00278: log file
'/opt/oracle/flash_recovery_area/ORCL/archivelog/2012_04_13/o1_mf_1_60517_7rjzox
0l_.arc' no longer needed for this recovery
ORA-00279: change 1284618958 generated at 04/13/2012 15:30:05 needed for thread
1
ORA-00289: suggestion :
/opt/oracle/flash_recovery_area/ORCL/archivelog/2012_04_16/o1_mf_1_60519_%u_.arc
ORA-00280: change 1284618958 for thread 1 is in sequence #60519
ORA-00278: log file
'/opt/oracle/flash_recovery_area/ORCL/archivelog/2012_04_13/o1_mf_1_60518_7rjzox
0x_.arc' no longer needed for this recovery
ORA-00308: cannot open archived log
'/opt/oracle/flash_recovery_area/ORCL/archivelog/2012_04_16/o1_mf_1_60519_%u_.ar
c'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3 -
Recovery using Full BCV backup & archive logs
Hello DBA's ,
I have Last Sunday's Full BCV (Buisness Copy Volume) backup (i.e. ..... the tablespaces were taken into Backup mode then Sync the BCV, then split the BCV , take the backup of BCV and take the tabespaces in normal mode in short what we call as HOT BACKUP ........ ) & also I am taking only archive log & control file backup Daily.
Now I want to Run my database on Different Server using the above FULL BCV & daily backed up Archive logs & Control file.
Kindly update me- Can I go for following recovery steps for above scenario.
1) Install ORACLE software on new server.
2) Restore the last Sunday's FULL BCV (Hot backup)
3) Restore the archive log from last Sunday's Full BCV backup.
4) Restore the latest backed up control file.
5) Mount the database.
6) Recover the database using backed up control file & archive logs.
7) Open the database with RESETLOGS option.
Please Guide me whether I can Fully Recover/Start database on this new server using above steps. ---OR---- " Are there any more files except data files that need to be backed up daily after Full BCV ? " ---OR ---- More suggestions are Welcome.
I want to test this scenario bcz.
a) I can't afford daily BCV due to lack of storage with current retention given by buisness.
b) I can't afford long time taken by RMAN for backup & recovery, as it disturbs my other backup shedules, also RTO should be very low as per my buisness requirement.
c) Currently we are not thinking for any another Backup options.
OS platform -- SOLARIS 10
Database version -- ORACLE 9i/10g
Atul.Hello everybody ....
Actually I am doing the above scenario practically and I am facing the problem that when I am applying my archive logs using backup controlfile until cancel, the recovery completes upto the available Archive logs/sequence. But it throws the following error along with it ......
ORA-00279: change 7001791222 generated at 01/13/2008 07:23:42 needed for thread
1
ORA-00289: suggestion : /oracle/EPR/oraarch/1_9623_601570270.dbf
ORA-00280: change 7001791222 for thread 1 is in sequence #9623
ORA-00278: log file '/oracle/EPR/oraarch/1_9622_601570270.dbf' no longer needed
for this recovery
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
ORA-00279: change 7001816252 generated at 01/13/2008 12:53:05 needed for thread
1
ORA-00289: suggestion : /oracle/EPR/oraarch/1_9624_601570270.dbf
ORA-00280: change 7001816252 for thread 1 is in sequence #9624
ORA-00278: log file '/oracle/EPR/oraarch/1_9623_601570270.dbf' no longer needed
for this recovery
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
ORA-00308: cannot open archived log '/oracle/EPR/oraarch/1_9624_601570270.dbf'
ORA-27037: unable to obtain file status
SVR4 Error: 2: No such file or directory
Additional information: 3
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/oracle/EPR/sapdata1/system_1/system.data1'
SQL> SQL> SQL> SQL> SQL> SQL> SQL>
SQL> alter database open resetlogs;
alter database open resetlogs
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/oracle/EPR/sapdata1/system_1/system.data1'
So, I opened my database using Last (Sunday's) full hot backup only and it opens successfully without applying any archives.
Now, my question is... why my database doesn't open with OPEN RESETLOGS option when I am recovering it using command " RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE; "
I want to recover my database upto Saturday then What should I do ?
Please help me out !
Atul. -
Incomplete Recovery Fails using Full hot backup & Archive logs !!
Hello DBA's !!
I am doing on Recovery scenario where I have taken One full hot backup of my Portal Database (EPR) and Restored it on New Test Server. Also I restored Archive logs from last full hot backup for next 6 days. Also I restored the latest Control file (binary) to their original locations. Now, I started the recovery scenario as follows....
1) Installed Oracle 10.2.0.2 compatible with restored version of oracle.
2) Configured tnsnames.ora, listener.ora, sqlnet.ora with hostname of Test server.
3) Restored all Hot backup files from Tape to Test Server.
4) Restored all archive logs from tape to Test server.
5) Restored Latest Binary Control file from Tape to Test Server.
6) Now, Started recovery using following command from SQL prompt.
SQL> recover database until cancel using backup controlfile;
7) Open database after Recovery Completion using RESETLOGS option.
Now in Above scenario I completed steps upto 5) successfully. But when I execute the step 6) the recovery completes with Warning : Recovery completed but OPEN RESETLOGS may throw error " system file needs more recovery to be consistent " . Please find the following snapshot ....
ORA-00279: change 7001816252 generated at 01/13/2008 12:53:05 needed for thread
1
ORA-00289: suggestion : /oracle/EPR/oraarch/1_9624_601570270.dbf
ORA-00280: change 7001816252 for thread 1 is in sequence #9624
ORA-00278: log file '/oracle/EPR/oraarch/1_9623_601570270.dbf' no longer needed
for this recovery
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
ORA-00308: cannot open archived log '/oracle/EPR/oraarch/1_9624_601570270.dbf'
ORA-27037: unable to obtain file status
SVR4 Error: 2: No such file or directory
Additional information: 3
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/oracle/EPR/sapdata1/system_1/system.data1'
SQL> SQL> SQL> SQL> SQL> SQL> SQL>
SQL> alter database open resetlogs;
alter database open resetlogs
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/oracle/EPR/sapdata1/system_1/system.data1'
Let me know What should be the reason behind recovery failure !
Note : I tried to Open the database using Last Full Hot Backup only & not applying any archives. Then Database Opens successfully. It means my Database Installation & Configuration is OK !
Please Let me know why my Incomplete Recovery using Archive logs Goes Fail ?
Atul Patil.oh you made up a new thread so here again:
there is nothing wrong.
You restored your backup, archives etc.
you started your recovery and oracle applyed all archives but the archive
'/oracle/EPR/oraarch/1_9624_601570270.dbf'
does not exist because it represents your current online redo log file and that is not present.
the recovery process cancels by itself.
the solution is:
restart your recovery process with:
recover database until cancel using backup controlfile
and when oracle suggests you '/oracle/EPR/oraarch/1_9624_601570270.dbf'
type cancel!
now you should be able to open your database with open resetlogs. -
What if the log directory is full?
I've just switched from Oracle to DB2.
I have a simple question: what if the log directory is full before the logs are archived?
Forgive me if this is to basic.
Thanks!Hello, this depends on the setting of the blk_log_dsk_ful database configuration parameter.
[http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=/com.ibm.db2.luw.admin.config.doc/doc/r0005787.html]
SAP standard setting is YES -
In windows 2003 + db2 combination, archive log partition is full now so can anybody tell me how to archive the logs and delete it from DB2 system level.
I would appreciate the procedure with steps and prerequisite.
Thanks in advanceHello Daniel,
I am not sure about your current situation. So, I can only guess.
I supposed the drive that hold your log_archive directory becomes full at a certain point. When that happens, DB2 will keep on trying to archive the logs to the log_archive directory. And when it fails, the logs will stay in log_dir and thus your log_dir and gradually fill up log_dir until it is full as well.
Now that your log_archive has more space, DB2 will try to archive the logs from log_dir to log_archive again and in the end, all the archive logs that are supposed to be in log_archive should be in log_archive.
Once the logs are moved to log_archive. You can save them to a safe location (TSM or tape drives) OR "prune" them once you have determined that you don't need them any more.
Regards, -
Archive directory full. RMAN backup failed.
My archive directory went out of space due to rman issue. /tmp was 100%. I had no choice late last night but to move archive logs to another directory (/backups/arch) I changed log_archive_dest also to this location. However RMAN keeps looking at the previous archive directory. Any ideas how I acn make RMAN pick up the archives from this new location?
Oracle version : 10.2.0.4
HP-UX OS
Thank you.Solved it. Had to use :
catalog start with '<new_directory_of_archivelogs>';
Edited by: 860412 on Aug 3, 2011 9:52 AM -
Hi all,
I noticed that my prod/applprd/comn/admin/log directory is 50G !!!
Looks like it's full of .req, .txt and .mgr files.
Can I savely remove all but 30 days old logs from there using the following command: find . -mtime +30 -exec rm{} \;
Thanks,
EugeneHi,
I noticed that my prod/applprd/comn/admin/log directory is 50G !!!
Looks like it's full of .req, .txt and .mgr files.Typically, those files should be purged when you run "Purge Concurrent Request and/or Manager Data (FNDCPPUR)" concurrent program.
Note: 92333.1 - How to Optimize the Process of Running Purge Concurrent Request and/or Manager Data (FNDCPPUR)
Note: 154850.1 - How to Run the Purge Concurrent Request and/or Manager Data Program and Which Tables Does it Purge?
Can I savely remove all but 30 days old logs from there using the following command: find . -mtime +30 -exec rm{} \;
If you still have some files after running the concurrent program, then you can use your command to delete the files.
how to purge concurrent requests data at os level
how to purge concurrent requests data at os level
Regards,
Hussein
Maybe you are looking for
-
I have a Voice modem and I am communicating with it over a serial connection with AT commands. I am trying to put the modem in voice mode so that i can dial a number through Labview and play a wav file which should be heard on the receiving end. I do
-
After 10.6.7 can't get desktop background to display
This problem is similar to Linc Davis problem solved in this thread: https://discussions.apple.com/thread/2795229 In that thread I write: "I tried the [] from Linc Davis and it didn't work for me. I have a MBP bought in may 2010 i Sweden which is whe
-
Df error for lofs file system in local zone.
I 've a zone which is running oracle db instance. We have exported the SAN file system from the global zone as following fs: dir: /oradb special: /oradb raw not specified type: lofs options: [] from global zone #df -h | grep oradb /dev/dsk/emcpower17
-
Excise Cancellation Procedure Require
Hi Expert, I am finding problem to cancel Excise invoice. Procedure which I am adopting. 1. Creation of PO with Cost Center 2. MIGO with Movt. type 103 During GR, Excise is being captureed & Posted. Now I wanted to cancel GR & Excise. 1. MIGO with
-
Auto removal of previous A/V
Hi, I'm on System Center 2012 and I'm testing Endpoint Protection. I like the fact that SCEP is able to remove a previously installed A/V application but we still use the McAfee agent for encryption. The McAfee agent has many other purposes than a s