Backup & Recovery :: RMAN Backup Strategy For Active-active Deployments Using Streams
Jul 25, 2012
We are using oracle as database in our application. For high availability we have a cluster of multiple nodes and the data is replicated using oracle streams. All the nodes in the cluster are active. We do not have any concept of stand-by.
Now we are planning to use oracle RMAN for backup and recovery. RMAN user's guide doesn't recommend any strategies for such deployments. It mainly focuses on primary/stand-by deployments.
We have production database.We would like to have 15 last online full backups (sheduled once a day) and to be possible to restore database to a point in time only between last backup and current time.
If I configure retention window for 15 days, archive redo logs in last 15 days are also backed up, and this consumes lot of space, which is a problem here (database files and arhive logs are of a huge size).(There is enough space for 15 full backups and archive log for one day though)
How to configure RMAN for this?I was thinking about configuring retention policy for 15 days and adding this lines at the and of a daily RMAN cronjob:
backup archivelog all not backed up; CROSSCHECK BACKUP DEVICE TYPE DISK; DELETE NOPROMPT ARCHIVELOG ALL;
I have a active data guard database which is copy of my production database. can i backup the active database using RMAN? The ADG is a read only and dont know, if RMAN can backup an read only database.
I'm trying to set up active database duplication between 2 Oracle 11g servers.
Both servers were set up with identical configurations (same directory structures, file systems, SIDs, and sys passwords.) Both oracle instances were created at the time of software installation.
Here is how things are configured: - Version: Ora11gR2 - Oracle service name: orcl - File system: ASM - OS: Windows Server 2008
I've done some research and found several sources giving instructions on how to set up active database duplication (including a blog engry by rajabaskar on this site), but each site seems to have different details.
So, here's what I have so far:
- Set up entries in each TNSNames file... each has an entry 'src' and 'dst' (for source and destination)
- A new listener has been added on the source machine
- on the destination machine, run the 'oradm' to create a new SID. However, is this really necessary? Since the service names are already the same
- I'm also supposed to create a password file on the destination machine using orapwd. Again, is this necessary, if I'm using the same passwords on both machines?
Am I on the right track? Should I have created an actual database on the destination machine or should I have started with just the software installed?
O.S Version HP-UX B.11.31 U ia64 Oracle DB Version 11.2.0.3.0 Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production Storage : ASM Diskgroups -------------------------------------------------------------------------------------------------------------------------------------
I am new to Oracle, like to get clarified on below;
I like to duplicate the database DATABASEA to DATABASEB and need to be run in same server. I tried to bounce the listener & databaseb instance multiple times but no lucky.
Step 1 : The instance DATABASEB is in Nomount stage
Step 2 :
==> tnsping DATABASEB TNS Ping Utility for Linux: Version 11.2.0.2.0 - Production on 11-SEP-2012 07:36:54 Copyright (c) 1997, 2010, Oracle. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = client )(PORT = 1521)) (CONNECT_DATA = ( SERVER = DEDICATED) (SERVICE_NAME = DATABASEB)(UR=A))) OK (10 msec)
Step 3 :
==> rman target sys/*****@DATABASEA auxiliary sys/********@DATABASEB Recovery Manager: Release 11.2.0.2.0 - Production on Tue Sep 11 07:37:50 2012 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. connected to target database: DATABASEA (DBID=1723462779) RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
In DR site. i have to clone the database from pshysical standby database and clone db will be normal db not standby. Is it possible to do rman duplicate from active dataguard? will it support the duplicate database from active database or i have to take the rman backup of standby database and duplicate from backup piece.
O.S Version HP-UX B.11.31 U ia64 Oracle DB Version 11.2.0.3.0 Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production Scenario :
Using RMAN Active cloning to duplicate a RAC database from Production to Development environment.
Problem:
At the end of the cloning the below errors are reported; RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: ===========================================================
[code]...
How to prevent the error of RMAN-06054: media recovery requesting unknown archived log for thread with sequence and starting SCN of while performing the RMAN Active Cloning? I do NOT want to use UNTIL clause.
I have 2 seperate rman backup one backup is of only datafile ,spfile and controlfile which i am able to restore and recover without any problem say bkp1 taken at 10 am
other set of backup is of only archive log files of same day but later time than datafile backup say bkp2 taken at 8pm...if i restore and recover bkp1 and try to restore bkp2 it gives error datafile exist (possibly due to fact both backup have control file)
if i just restore bkp1 and try to restore bkp2 so that i can do one recover at time it gives error datafile permission issue (possibly due to fact both backup have control file)
I want to restore database upto 8pm time how can i use both bkp1 and bkp2 to do it(restore datafiles and apply all archive logs on it)
4. I have tried to login in locally (not using Quote: @<dbasename> but I get the same error message as above. I have set ORACLE_SID and LOCAL to the database name and still the same TNS name error
We are trying to restore a database on the different server using RAM incremental level 0 and 1 backups. We have weekly Incremental level 0 backups along with incremental backups on daily basis. During recovery of Incremental level 0 backup, RMAN is expecting/looking for Incremental Level 0 backup of prior week as well. Is this the usual process for RMAN to look for prior level 0 backup though we need to restore from the current level 0 backup and roll forward by a week with subsequent Level 1 backup.?
We intend to restore from the Level 0 of 1/16 and roll forward with daily incrementals till 1/22. RMAN is expecting level 0 backupsets from 1/9 backup as well and keep failing since those backups are not available. quick inputs since we are in middle of recovery and trying to resolve if this is even doable.
We are doing RMAN Duplicate set until time to refresh daily our test database for our developers and it taking long time to finish. We noticed on the restore log that RMAN was using a day old old backup pieces to refresh the test database and don't immediately use the latest backup pieces instead.
For additional details here's the rman duplicate command we are using which we run daily(mon-sat) at 4am once daily full backup on production completed.
RMAN Duplicate commands: run { set until time "to_date(to_char(sysdate,'Mon DD YYYY') || ' 04:00:00', 'Mon DD YYYY HH24:MI:SS')"; allocate auxiliary channel ch1 type disk; duplicate target database to testdb; } exit
Is there a way on how to let RMAN use the latest backup pieces instead?
I am tryign to run a split onlike full backup from the os useign the sap command which is linked to rman..Command that i am useing is ...
brbackup -u / -c force -t online_split -m full -p initBR1_onlinefull.sap
The backup goes thru but i get this erro on the end...
BR0522I 57 of 57 files/save sets processed by RMAN BR0280I BRBACKUP time stamp: 2011-01-26 12.23.26 BR0505I Full database backup (level 0) using RMAN successful BR0280I BRBACKUP time stamp: 2011-01-26 12.23.28
[code]...
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Is this script is enough to delete the backup pieces older than 2 days.
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS; configure device type disk parallelism 1 backup type to compressed backupset;
run { allocate channel d1 type disk ; backup filesperset 5 format '/u06/backup/EBSDEV/EBSDEV_data_t%t_s%s_p%p' database ; sql 'alter system archive log current' ; backup filesperset 20 format '/u06/backup/EBSDV3/EBSDV3_arch_t%t_s%s_p%p' archivelog all delete input ;
We have configured tivoli and getting the below error while execute rman backup.
> rman target / catalog rman/*****@CATLOGDB Recovery Manager: Release 11.2.0.3.0 - Production on Sat Nov 17 13:35:03 2012 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: AMTMXPRD (DBID=534215973) connected to recovery catalog database
I am trying to setup incremental backup on my windows OS based server using RMAN command in batch file. When I use batch file in OS scheduler it is working fine, when I am calling same batch file from my LOCAL desktop PC it throws errors as below.
D:> \3.193.211.19sgdba mankp_acressit.bat D:>rman catalog rman/******@acressit target / cmd file=E:sgdba mankp_arch.rcv log E:sgdba mansit_arch_rman_backup.log RMAN-00557: could not open MSGLOG "E:sgdba
[code]....
Both single and double quotes (' or ") are accepted for a quoted-string.
Quotes are not required unless the string contains embedded white-space.
RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-00556: could not open CMDFILE "E:sgdba mankp_arch.rcv"
[code]....
* on my DB server I am login using my administrator account, on my PC I dont have admin account.
* I have checked remote execution using local user as well as admin user.
* I have checked the permission and my local ID & EVERYONE has all permission in that folder.
We are using Oracle 10g R2 in Windows Server 2003. I'm trying to restore a database in a new server, using RMAN backups.
Our external consultant configured RMAN scripts for full and incremental backups but never tested them . Since he just doesn't show up, I'm forced to tested them, restoring the whole database in a new server.
My instance is named MTDPROD, and I will create all from scratch.
At current server, RMAN files are generated in: //192.168.1.149/g$/XXXSRV4-ArcLogs/MTDPROD/RMAN
At new server, I run all these commands:
C:>oradim -new -sid MTDPROD -intpwd mtdprod Instance created -- I created the relevant folder hierarchy under <ORACLE_BASE> directory -- Then, I created the relevant directories for Oracle Database, as follows: --a. Create BDUMP, CDUMP, and UDUMP directories under '<ORACLE_ BASE>
[code]....
By instance, I see a lot of this kind of files:
- FULL_MTDPROD_20110529_386_1.BAK - INCR_MTDPROD_20110621_480_7.BAK And only see these two files: - C-2169285856-20110527-03 - C-2169285856-20110527-04
It seems that this C-2169285856-.... files only were on 27/05/2011 and then no more. However, the FULL_... and INCR_.. files are generated every day. The FULL is generated at the end of each month and INCR is generated every day.
This is the backfull.sql:
run { allocate channel c1 type disk maxpiecesize=4G; CROSSCHECK archivelog all; backup incremental level 0 format '\192.168.1.149g$XXXSRV4-arclogsMTDPRODRMANFULL_
[code]....
This is the backincr.sql:
run { allocate channel c1 type disk maxpiecesize=4G; CROSSCHECK archivelog all; backup incremental level 1 cumulative format '\192.168.1.149g$XXXSRV4-arclogsMTDPRODRMANINCR_ %d_%T_%s_%p.bak'
Tape streaming is not happening while performing RMAN tape backup. On investigation, you find that it is not because of the incremental backup or the empty file backup and that RMAN is sending data blocks to the tape drive fast enough.What could be a solution to make tape streaming happen during the backup?
A.Configure backup optimization
B.Configure the channel to increase MAXOPENFILES
C.Configure the channel to increase the capacity with the RATE parameter
D.Configure the channel to adjust the tape buffer size with the BLKSIZE option
We have the requirement of performance testing of our proposed production platform, for this i am asked to take RMAN backup of clean position (Say Day0 or baseline backup) and restore it multiple times for few rounds of testing. My question is after 1st restore (with set until time of day0 position) if i open the database with resetlogs, would i be able to restore same clean backup again? I am using control file in the environment instead of RMAN catalog database. What i can do to make this scenario work? I am already in preperation of setting rman catalog database.
run { CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/dd_oraback/tkprod/%F'; CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 22 DAYS; sql 'alter system archive log current';
[code]...
So /dd_oraback is a Data Domain mount. Not sure if that makes any difference or not.
I am attempting to use an rman backup form our live server to restore live data over an existing dev database with a different name. I cant use the duplicate command as the versions of oracle are different (10.2.0.4 EE on live, 10.2.0.5 SE on dev) So I copied the backup sets including an autobackup control file onto the dev server. I set the ORACLE_SID to the DEV version (SUN43DEV) and startup nomount and restore controlfile from the backup location. This works and restored the live controlfile. However, I then wanted to mount the database and catalog the backupsets before making a note of the last archivelog etc and restoring the backup with set newname options. But when I try to mount the database I am told that the database has a different name (SUN43 is not SUN43DEV). I read somewhere that I need to set the ORACLE_SID to the live value (SUN43) and restore as that, then use nid TO RESET THE DBID and DATABASE NAME. However, my tnsnames on DEV has no entry for the live database, and we do not have any service defined through ORADIM for the live instance on the dev server. Should I be creating an entry in DEV tnsnames that actually looks at the LIVE server? or do I need to create a service and tns entry etc for SUN43 on my DEV server pointing at the DEV server I have not seen any mention in instructions of creating a service or adding the entry to tnsnames, or indeed adding an entry to the listener for the original live sid. I am worried that if I actually point to the live server then the restore would be attempted on the live server not dev even though I am running it from Dev.
Also, do I need to drop the existing database on DEV before I restore or will RMAN just restore over the top of it?
Finally, if I try to add an entry to the LISTENER.ORA for the new sid, when I stop and start the listener, or reload, the entry is not recognised. I also noticed that the existing SUN43DEV entry is not in there either, yet I can still use that SID - I am assuming that is because the listener is not being used and the sid is recognised from the existence of the service in windows services instead?
I am getting starting with rac environments. I need to configure a two nodes active/active with rac and I need to know if always using rac both nodes will be active or if I have to do that at some point when installing. I have reading some docs from oracle and others authors about rac and its configuration process but that is not understood for my yet.