Archive log question
i have a db in archive log mode
i found harddisk always full with archive log
and db can not work then
so i decide to comment this 3 parameter
# log_archive_start = true
#log_archive_dest_1= "location=/u01/app/oracle/admin/dbname/arch"
# log_archive_format = arch_%t_%s.arc
in init.ora
then i enter into svrmgrl
shutdown abort
startup
db open and i found db continued to archive redolog
when redolog are full
db stop work and alertlog report all redolog need archive
why ?
A better solution would be to create a job at the OS level that
would run automatically at set times to backup the archive logs
to another location, then remove the backed up logs from your
drive. Depending on the available space, and the amount of log
that your database creates, you can set the timing of this job
to keep some space free all the time. On most of our servers,
the timing ranges from every 2 hours to once a week.
When you stop archiving, you can only recover the database to
the time of your last backup. Also, the backup needs to be
done "cold", that is, with the database shutdown. Worst case;
You backup tonight, work all day tomorrow and seconds before the
backup finishes, your disk explodes. Can you afford to lose 24
hours work?
Similar Messages
-
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? -
Data Warehouse Archive logging questions
Hi all,
I'd like some opinions/advice on archive logging and OWB 10.2 with a 10.2 database.
Do you use archive logging on your non-production OWB instances? I have a development system that only has "on demand" backups done and the archive logs fill frequently. In this scenario, should I disable archive logging? I realize that this limits my recovery options to cold backups but on a development environment, this seems sufficient for me. Would I be messing up any OWB features by turning off archive logging?
For production instances, how large do you make your archive log (as a percentage of your total DW size perhaps)?
How do you manage them? With Flash recovery areas? Manually? RMAN or other tools?
Thanks in Advance,
MikeUsualy, I don't set any DW tables to log. Since it's a data warehouse, I believe it's better to make cold backups. In some cases, ETL Mappings may work like backup procedures themselves.
In OWB, select the object you need (table or index) to create. Right-click it, select Configuration -> Performance Parameters -> Logging Mode -> NOLOGGING
Flash RecoveryDon't think it's going to help you, since most of your data manipulation is based on batch jobs.
RMANIf you want to make hot backups, this is something that can really help you manage backup procedures.
ManuallyMaybe... Why not?
I don't take hot backups from DW databases. I prefer to take cold backups. In a recovery scenario, you restore the cold backup and if it's 3 days late, I execute the ETL mappings for the last 3 days.
Regards,
Marcos -
RAC online and archive logs question
Hello All,
I setup a RAC database instances prod1 and prod2 (10.2.0.4). Datafiles and onlinelogs are on ASM.
Does these results look good queried from two instances. I am kind of concerned about the Group3 that has the same name for both the members.
Also archived logs are going to the ASM, is this a good practice. I was reading Oracle RMAN book and it mentioned archived logs go to local disk.
Is it possible to archive to local disk for online that are on ASM? Please advice. Early reply appreciated.. Thanks San~
PROD1 Instance
SQL> select member from v$logfile;
MEMBER
+DATA/prod/onlinelog/group_2.264.706892209
+FLASH/prod/onlinelog/group_2.259.706892211
+DATA/prod/onlinelog/group_1.261.706892209
+FLASH/prod/onlinelog/group_1.260.706892209
+DATA/prod/onlinelog/group_3.258.706892235
+FLASH/prod/onlinelog/group_3.258.706892235
+DATA/prod/onlinelog/group_4.256.706892237
+FLASH/prod/onlinelog/group_4.257.706892237
8 rows selected.
PROD2 Instance
SQL> select member from v$logfile;
MEMBER
+DATA/prod/onlinelog/group_2.264.706892209
+FLASH/prod/onlinelog/group_2.259.706892211
+DATA/prod/onlinelog/group_1.261.706892209
+FLASH/prod/onlinelog/group_1.260.706892209
+DATA/prod/onlinelog/group_3.258.706892235
+FLASH/prod/onlinelog/group_3.258.706892235
+DATA/prod/onlinelog/group_4.256.706892237
+FLASH/prod/onlinelog/group_4.257.706892237
8 rows selected.
===
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 3
Next log sequence to archive 4
Current log sequence 4
====
Thanks
SanHi San,
sannidhi wrote:
Also archived logs are going to the ASM, is this a good practice. I was reading Oracle RMAN book and it mentioned archived logs go to local disk.
Is it possible to archive to local disk for online that are on ASM? Please advice. Early reply appreciated.. Thanks San~
It is recommend to store archived log files on ASM and on Shared disk, check your archive log format which suppose to represent uniqueness across all instances.
Yes, technically it is possible to archive to local disk, but not recommended as if you loose local disk there will be gaps in the archived log files and also it increases the administration.
Regards,
Thota -
Question about import in archive log mode
Hello.
I am a developer, I have ordered to write a script that makes the import of a schema of a database (release 9.2.0.7). That import will be done once a day. I have seen that in my development environment the import creates 54 archivers files (10M aprox. each), that means more that half a Gb a day, it seems too much to me.
I cannot see why all those archivers can be useful. Would a good way of proceeding the following?
1. Forcing an archiver just before the import (I do not know how to do that) so that a backup could be done to the state before the import.
2. Disabling archive log mode during the import and enabling it just after the import (I do not know how to do that).
3. Forcing a new archiver just after the import (I do not know how to do that).
Thanks in advance.540M is not that much.
One would question why you need to import every day,
there must be better ways to do this.
The three steps you propose look like an awful
scenario, as it would require the database to switch
from archivelog to noarchivelog and vice versa.
This would require the database to close twice a
day.
The scenario is also incomplete as one would need to
take a backup after the import
If you can convince your DBA to close the database
twice a day, he should write the script, which he can
easily derive from the docs.
But likely he will visit Billy Verreynne to borrow
his lead pipe, and rightly so ;)
Sybrand Bakker
Senior Oracle DBAThanks for the answer.
A few things:
- Sorry for my ignorance, I have no experience in database backups, I do not understand why I need to backup just after the import.
- That database is not critical, it is just for a team who will test on that database several applications, so the database will only need to be open during the office schedule.
- I have no dba. The client has a dba for several databases but I have no contact with him/her nor my boss has. -
10gr2 standard edition standby question - archive log shipping
Hello,
I have 2 servers with 10gr2 standard edition, one is production(primary) and secondary is standby on windows platform. To keep standby synchronized i use a script to copy archived logs from primary to standby and applying manually (with scripts).
My question is: can i use redo transport service in order to copy archivelogs from primary to standby ?
Thank you in advance.Hi,
It is a bit of topic.
According to the Licensing Document page 10 DataGuard is not supported for standard edition.
http://download.oracle.com/docs/cd/B28359_01/license.111/b28287.pdfRegards,
Tycho -
Recovery question using archive log
HPUX 11X
Oracle 10.2.0.2
I have a standby database that the customers want to test the ability to fail over. They also want to test the data integrity of the standby once it's brought on line as the primary.
I've already told the customer that any writes that they do on the standby during the test time WILL be lost. I plan on doing a incomplete recovery back to a specific sequence number / archive log when the tests are complete.
My plan is to take note of the current sequence number just before I bring the standby live. When all is said and done, I was going to do a recover back to the sequence number one PRIOR to that one. Then when I place the db back in standby mode, it will sync back up to the primary.
What I need to know is if this is a good or a bad idea. Should I plan on doing it differently and for what reason.
Thanks! :)Use flashback database to recover the former primary database to a new standby.
http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/scenarios.htm#i1049997
Therefore the changes made on standby won't be lost (unless you want to lose them).
If your databases do not have Flashback Database feature enabled, you can use incomplete recovery instead.
I think Flashback Database should be your first option. -
Question about Archive Log Deletion policy
I've a problem to understand the Archive Log Deletion policy, and I I'd like to this problem explain with the following example.
Messages of the database are in German, but I guess you'll understand them.
SQL> startup
ORACLE-Instance hochgefahren.
Total System Global Area 5344731136 bytes
Fixed Size 2129240 bytes
Variable Size 2684355240 bytes
Database Buffers 2617245696 bytes
Redo Buffers 41000960 bytes
Datenbank mounted.
Datenbank geöffnet.
SQL> archive log list
Datenbank-Log-Modus Archive-Modus
Automatische Archivierung Aktiviert
Archivierungsziel E:\oracle\thetis_iv\arch
Älteste Online-Log-Sequenz 17917
Nächste zu archivierende Log-Sequenz 17919
Aktuelle Log-Sequenz 17919
SQL> alter system switch logfile;
System wurde geändert.I created a brand new archive log.
SQL> exit
Verbindung zu Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options beendet
D:\OracleDB\product\11.1.0\db_1\BIN>dir E:\oracle\thetis_iv\arch
Datenträger in Laufwerk E: ist Volume
Volumeseriennummer: 3EBD-77E5
Verzeichnis von E:\oracle\thetis_iv\arch
06.04.2011 15:04 <DIR> .
06.04.2011 15:04 <DIR> ..
06.04.2011 15:04 17.137.152 ARC17919_0721667907.001
1 Datei(en), 17.137.152 Bytes
2 Verzeichnis(se), 41.073.258.496 Bytes freiand this is the only archive log in the directory. Now I start rman:
D:\OracleDB\product\11.1.0\db_1\BIN>rman target / catalog rmanrepo@rmanrepo
Recovery Manager: Release 11.1.0.7.0 - Production on Mi Apr 6 15:05:35 2011
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Mit Ziel-Datenbank verbunden: ENTWIV (DBID=21045568)
Kennwort für Recovery-Katalog-Datenbank:
Verbindung mit Datenbank des Recovery-Katalogs
RMAN> show all;
RMAN-Konfigurationsparameter für Datenbank mit db_unique_name ENTWIV sind:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE DEFAULT DEVICE TYPE TO 'SBT_TAPE';
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'E:\oracle\thetis_iv\backup\CF_%F_ENTWIV.ORA';
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE SBT_TAPE TO '%F'; # default
CONFIGURE DEVICE TYPE SBT_TAPE PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS 'ENV=(TPDO_OPTFILE=D:\Services\Tivoli\TSM\AgentOBA64\tpdo.opt)';
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BZIP2'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO 'SBT_TAPE';
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLEDB\PRODUCT\11.1.0\DB_1\DATABASE\SNCFENTWIV.ORA'; # defaultThe archive log deletion policy says the the logfiles have to be backed up for two times before they get deleted.
Now I backup all archive logs, that havn't been backed up for at least two times.
RMAN> run { backup archivelog all not backed up 2 times
2> format '%d_AR_%Y%M%D_%s_%t'
3> tag 'ARCHIVE LOGS'
4> DELETE ALL INPUT;
5> }
Starten backup um 06.04.2011 15:08:01
Aktuelles Log archiviert
Zugewiesener Kanal: ORA_SBT_TAPE_1
Kanal ORA_SBT_TAPE_1: SID=253 Device-Typ=SBT_TAPE
Kanal ORA_SBT_TAPE_1: Data Protection for Oracle: version 5.5.1.0
Kanal ORA_SBT_TAPE_1: Backup Set für Archive Log wird begonnen
Kanal ORA_SBT_TAPE_1: Archive Logs in Backup Set werden angegeben
Eingabe-Archive-Log-Thread=1 Sequence=17919 RECID=147 STAMP=747759899
Eingabe-Archive-Log-Thread=1 Sequence=17920 RECID=148 STAMP=747760081
Kanal ORA_SBT_TAPE_1: Piece 1 wird auf 06.04.2011 15:08:02 begonnen
Kanal ORA_SBT_TAPE_1: Piece 1 auf 06.04.2011 15:08:09 beendet
Piece Handle=ENTWIV_AR_20110406_23_747760082 Tag=ARCHIVE LOGS Kommentar=API Version 2.0,MMS Version 5.5.1.0
Kanal ORA_SBT_TAPE_1: Backup Set vollstõndig, abgelaufene Zeit: 00:00:08
Kanal ORA_SBT_TAPE_1: Archive Logs werden gel÷scht
Archive Log-Dateiname=E:\ORACLE\THETIS_IV\ARCH\ARC17919_0721667907.001 RECID=147 STAMP=747759899
Archive Log-Dateiname=E:\ORACLE\THETIS_IV\ARCH\ARC17920_0721667907.001 RECID=148 STAMP=747760081
Beendet backup um 06.04.2011 15:08:10
RMAN> exit
Recovery Manager abgeschlossen.
D:\OracleDB\product\11.1.0\db_1\BIN> dir E:\oracle\thetis_iv\arch
Datenträger in Laufwerk E: ist Volume
Volumeseriennummer: 3EBD-77E5
Verzeichnis von E:\oracle\thetis_iv\arch
06.04.2011 15:08 <DIR> .
06.04.2011 15:08 <DIR> ..
0 Datei(en), 0 Bytes
2 Verzeichnis(se), 41.090.396.160 Bytes freirman deleted all archive logs, even I they are on tape only once by now.
Thats not what I expected. Where is my mistake?Hi,
I do new tests it's very strange.
BACKUP ARCHIVELOG command is not obeying the policy of archivelog.
You can open a SR on MOS. (to check bugs)
I reproduce the same test and the result was the same, it seems that this is a bug.
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK;
RMAN> backup archivelog all not backed up 2 times delete all input;
Starting backup at 06-APR-11
current log archived
using channel ORA_DISK_1
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=15 RECID=16 STAMP=747753711
input archived log thread=2 sequence=20 RECID=17 STAMP=747753714
input archived log thread=1 sequence=16 RECID=19 STAMP=747753729
input archived log thread=2 sequence=21 RECID=18 STAMP=747753729
channel ORA_DISK_1: starting piece 1 at 06-APR-11
channel ORA_DISK_1: finished piece 1 at 06-APR-11
piece handle=+DATA/orcl/backupset/2011_04_06/annnf0_tag20110406t132210_0.304.747753731 tag=TAG20110406T132210 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
channel ORA_DISK_1: deleting archived log(s)
archived log file name=+DATA/orcl/archivelog/2011_04_06/thread_1_seq_15.293.747753711 RECID=16 STAMP=747753711
archived log file name=+DATA/orcl/archivelog/2011_04_06/thread_2_seq_20.295.747753715 RECID=17 STAMP=747753714
archived log file name=+DATA/orcl/archivelog/2011_04_06/thread_1_seq_16.294.747753729 RECID=19 STAMP=747753729
archived log file name=+DATA/orcl/archivelog/2011_04_06/thread_2_seq_21.298.747753729 RECID=18 STAMP=747753729
Finished backup at 06-APR-11
RMAN> list archivelog all;
specification does not match any archived log in the repositoryOracle Docs Says:
The BACKUP ARCHIVELOG ... DELETE INPUT command deletes archived log files after they are backed up.
This command eliminates the separate step of manually deleting archived redo logs.
With DELETE INPUT, RMAN deletes only the specific copy of the archived log chosen for the backup set.
With DELETE ALL INPUT, RMAN deletes each backed-up archived redo log file from all log archiving destinations.
As explained in "Configuring an Archived Redo Log Deletion Policy",
the BACKUP ... DELETE INPUT and DELETE ARCHIVELOG commands obey the archived redo log deletion policy
for logs in all archiving locations. For example, if you specify that logs should only be deleted when backed
up at least twice to tape, then BACKUP ... DELETE honors this policy.http://download.oracle.com/docs/cd/E11882_01/backup.112/e10642/rcmbckba.htm#BRADV89524
But in ours case it's not honors this policy.
Only with the FORCE command should this happen. But it is not our case.
Oracle Docs:
If FORCE is not specified on the deletion commands,
then these deletion commands obey the archived log deletion policy.
If FORCE is specified, then the deletion commands ignore the archived log deletion policy.http://download.oracle.com/docs/cd/E11882_01/backup.112/e10643/rcmsynta010.htm#RCMRF113
Alternatively you can do the following:
Set the commands separately.
Check this:
RMAN> run {
2> backup archivelog all not backed up 2 times ;
3> delete archivelog all backed up 2 times to disk;
4> }
Starting backup at 06-APR-11
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=2 sequence=22 RECID=21 STAMP=747755128
input archived log thread=1 sequence=17 RECID=20 STAMP=747755127
channel ORA_DISK_1: starting piece 1 at 06-APR-11
channel ORA_DISK_1: finished piece 1 at 06-APR-11
piece handle=+DATA/orcl/backupset/2011_04_06/annnf0_tag20110406t134528_0.295.747755129 tag=TAG20110406T134528 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 06-APR-11
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=78 instance=orcl1 device type=DISK
RMAN-08138: WARNING: archived log not deleted - must create more backups
archived log file name=+DATA/orcl/archivelog/2011_04_06/thread_1_seq_17.298.747755127 thread=1 sequence=17
RMAN-08138: WARNING: archived log not deleted - must create more backups
archived log file name=+DATA/orcl/archivelog/2011_04_06/thread_2_seq_22.294.747755129 thread=2 sequence=22
RMAN>Edited by: Levi Pereira on Apr 6, 2011 1:35 PM -
Hi!
I wonder if there is possibility to configure archiving policy in a way:
set one destination (/arch1/oracle) as primary, and another (/arch2/oracle) as optionally.
redo Logs will be copied to /arch2/oracle only if /arch1/oracle fails, but after it will be available again, files will be moved (or copied) from /arch2/oracle to /arch1/oracle. Anybody tried to store backup files in that way? is it possible? I tried various combinations of log_archive_dest_n and log_archive_dest_state_n parameters, but it won't work in a way I expected.
Message was edited by:
wojaczekit's about limitation of disk place on server where DB operates. Archived logs are stored on NFS filesystem, but time to time there are some problems with remote filesystem. In such cases DB will hang and manual change of arch log destination to local FS is needed. But this destination could not be set permanently because of disk space limitations.
When i set destination 1 as mandatory and 2 as optionally db hangs when arc can't use mandatory destination.
Setting both destinations as optionally gives finally inconsistency and storing files on local fs, what is not desirable -
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.... -
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. -
Stupid question. RMAN - apply new archive logs
I have following scenario:
I have backup from last night + archived logs.
And have a lot of new archivelogs.
And I've lost main server.
Now I can restore this database on another host. And this database will have state of the previous database from last backup. Can I somehow apply new archivelogs to this database? (We have all archivelogs after backup).
Thank you.Hi,
after restoring the backup on new server( on there exact same location).issue
startup mount;
recover database until cancel;<-- this cmd will apply are available archivelog.
alter database open resetlogs;
http://download-west.oracle.com/docs/cd/B10501_01/server.920/a97202/toc.htm
Thanks
Kuljeet -
How to find out who deleted the archive logs
Hi All,
Recently some archive logs were deleted from one of our servers. Is there any way to find out which user has deleted the archive logs through OS or through database ?
OS Version :-
SunOS Generic_Virtual sun4u sparc SUNW,SPARC-Enterprise
Database Version:-
SQL*Plus: Release 9.2.0.8.0 - Production on Mon Apr 9 01:12:15 2012888132 wrote:
Hi All,
Recently some archive logs were deleted from one of our servers. Is there any way to find out which user has deleted the archive logs through OS or through database ?
OS Version :-
SunOS Generic_Virtual sun4u sparc SUNW,SPARC-Enterprise
Database Version:-
SQL*Plus: Release 9.2.0.8.0 - Production on Mon Apr 9 01:12:15 2012As explained by others, from oracle database there is no record if they are deleted from OS.
But you can probably find the history of OS command been run with history command :). You can get the date and time.
Following link can help
http://stackoverflow.com/questions/99755/how-do-i-get-the-command-buffer-in-solaris-10
http://www.cyberciti.biz/faq/unix-linux-bash-history-display-date-time/
http://www.linuxquestions.org/questions/solaris-opensolaris-20/in-solaris-command-line-how-to-get-the-previous-commands-573814/
But i suggest you to post in Sun OS forum to get more details as its nothing to do with Database(in this scenario) -
Create procedure is generating too many archive logs
Hi
The following procedure was run on one of our databases and it hung since there were too many archive logs being generated.
What would be the answer? The db must remain in archivelog mode.
I understand the nologging concept, but as I know this applies to creating tables, views, indexes and tablespaces. This script is creating procedure.
CREATE OR REPLACE PROCEDURE APPS.Dfc_Payroll_Dw_Prc(Errbuf OUT VARCHAR2, Retcode OUT NUMBER
,P_GRE NUMBER
,P_SDATE VARCHAR2
,P_EDATE VARCHAR2
,P_ssn VARCHAR2
) IS
CURSOR MainCsr IS
SELECT DISTINCT
PPF.NATIONAL_IDENTIFIER SSN
,ppf.full_name FULL_NAME
,ppa.effective_date Pay_date
,ppa.DATE_EARNED period_end
,pet.ELEMENT_NAME
,SUM(TO_NUMBER(prv.result_value)) VALOR
,PET.ELEMENT_INFORMATION_CATEGORY
,PET.CLASSIFICATION_ID
,PET.ELEMENT_INFORMATION1
,pet.ELEMENT_TYPE_ID
,paa.tax_unit_id
,PAf.ASSIGNMENT_ID ASSG_ID
,paf.ORGANIZATION_ID
FROM
pay_element_classifications pec
, pay_element_types_f pet
, pay_input_values_f piv
, pay_run_result_values prv
, pay_run_results prr
, pay_assignment_actions paa
, pay_payroll_actions ppa
, APPS.pay_all_payrolls_f pap
,Per_Assignments_f paf
,per_people_f ppf
WHERE
ppa.effective_date BETWEEN TO_DATE(p_sdate) AND TO_DATE(p_edate)
AND ppa.payroll_id = pap.payroll_id
AND paa.tax_unit_id = NVL(p_GRE, paa.tax_unit_id)
AND ppa.payroll_action_id = paa.payroll_action_id
AND paa.action_status = 'C'
AND ppa.action_type IN ('Q', 'R', 'V', 'B', 'I')
AND ppa.action_status = 'C'
--AND PEC.CLASSIFICATION_NAME IN ('Earnings','Alien/Expat Earnings','Supplemental Earnings','Imputed Earnings','Non-payroll Payments')
AND paa.assignment_action_id = prr.assignment_action_id
AND prr.run_result_id = prv.run_result_id
AND prv.input_value_id = piv.input_value_id
AND piv.name = 'Pay Value'
AND piv.element_type_id = pet.element_type_id
AND pet.element_type_id = prr.element_type_id
AND pet.classification_id = pec.classification_id
AND pec.non_payments_flag = 'N'
AND prv.result_value <> '0'
--AND( PET.ELEMENT_INFORMATION_CATEGORY LIKE '%EARNINGS'
-- OR PET.element_type_id IN (1425, 1428, 1438, 1441, 1444, 1443) )
AND NVL(PPA.DATE_EARNED, PPA.EFFECTIVE_DATE) BETWEEN PET.EFFECTIVE_START_DATE AND PET.EFFECTIVE_END_DATE
AND NVL(PPA.DATE_EARNED, PPA.EFFECTIVE_DATE) BETWEEN PIV.EFFECTIVE_START_DATE AND PIV.EFFECTIVE_END_DATE --dcc
AND NVL(PPA.DATE_EARNED, PPA.EFFECTIVE_DATE) BETWEEN Pap.EFFECTIVE_START_DATE AND Pap.EFFECTIVE_END_DATE --dcc
AND paf.ASSIGNMENT_ID = paa.ASSIGNMENT_ID
AND ppf.NATIONAL_IDENTIFIER = NVL(p_ssn, ppf.NATIONAL_IDENTIFIER)
------------------------------------------------------------------TO get emp.
AND ppf.person_id = paf.person_id
AND NVL(PPA.DATE_EARNED, PPA.EFFECTIVE_DATE) BETWEEN ppf.EFFECTIVE_START_DATE AND ppf.EFFECTIVE_END_DATE
------------------------------------------------------------------TO get emp. ASSIGNMENT
--AND paf.assignment_status_type_id NOT IN (7,3)
AND NVL(PPA.DATE_EARNED, PPA.EFFECTIVE_DATE) BETWEEN paf.effective_start_date AND paf.effective_end_date
GROUP BY PPF.NATIONAL_IDENTIFIER
,ppf.full_name
,ppa.effective_date
,ppa.DATE_EARNED
,pet.ELEMENT_NAME
,PET.ELEMENT_INFORMATION_CATEGORY
,PET.CLASSIFICATION_ID
,PET.ELEMENT_INFORMATION1
,pet.ELEMENT_TYPE_ID
,paa.tax_unit_id
,PAF.ASSIGNMENT_ID
,paf.ORGANIZATION_ID
BEGIN
DELETE cust.DFC_PAYROLL_DW
WHERE PAY_DATE BETWEEN TO_DATE(p_sdate) AND TO_DATE(p_edate)
AND tax_unit_id = NVL(p_GRE, tax_unit_id)
AND ssn = NVL(p_ssn, ssn)
COMMIT;
FOR V_REC IN MainCsr LOOP
INSERT INTO cust.DFC_PAYROLL_DW(SSN, FULL_NAME, PAY_DATE, PERIOD_END, ELEMENT_NAME, ELEMENT_INFORMATION_CATEGORY, CLASSIFICATION_ID, ELEMENT_INFORMATION1, VALOR, TAX_UNIT_ID, ASSG_ID,ELEMENT_TYPE_ID,ORGANIZATION_ID)
VALUES(V_REC.SSN,V_REC.FULL_NAME,v_rec.PAY_DATE,V_REC.PERIOD_END,V_REC.ELEMENT_NAME,V_REC.ELEMENT_INFORMATION_CATEGORY, V_REC.CLASSIFICATION_ID, V_REC.ELEMENT_INFORMATION1, V_REC.VALOR,V_REC.TAX_UNIT_ID,V_REC.ASSG_ID, v_rec.ELEMENT_TYPE_ID, v_rec.ORGANIZATION_ID);
COMMIT;
END LOOP;
END ;
So, how could I assist our developer with this, so that she can run it again without it generating a ton of logs ? ?
Thanks
Oracle 9.2.0.5
AIX 5.2The amount of redo generated is a direct function of how much data is changing. If you insert 'x' number of rows, you are going to generate 'y' mbytes of redo. If your procedure is destined to insert 1000 rows, then it is destined to create a certain amount of redo. Period.
I would question the <i>performance</i> of the procedure shown ... using a cursor loop with a commit after every row is going to be a slug on performance but that doesn't change the fact 'x' inserts will always generate 'y' redo.
Maybe you are looking for
-
Adobe Flash Player Active X and Plugin Product Codes
Where can I find a list of all the Adobe Flash Player Active X and Plugin product codes? I am creating an uninstall script to cleanup any old versions and would like a complete up to date listing. This thread here has up to version 11.4 - http://foru
-
My Apple TV lacking sound when using iplayer etc
Can get sound when using Airplay from some web sources but not others. Any reasons why? Nick
-
Spell Check is Broken - Right Clicking on Misspelled Word Does Nothing
MIsspelled words are marked as incorrect in Safari, but when I right-click or control-click I never get a dialog to correct the misspelling. Spell-check works fine in all other apps, such as Mail. Any ideas? I have the problem on two machines. All ha
-
Customized Setting of External Applications are saved if using templates
We are using templates and on the template we have put the "External Application" portlet . Now if normal user tries and customize this portlet then these settings are not saved. Like user want's to see only 2 applications so he checks only 2 applica
-
I am hoping to add a JButton to a JTextArea, but to be completely honest, I am not sure if this is physically possible, let alone feasible. I have written some code which I hoped would do the trick, and although it compiles, it does not display the J