Backup & Recovery :: RMAN Tablespace Backup And Restore?
Sep 7, 2012
i want to clone the test db to dev db but i dont want default users and tablespaces(SYS,SYSAUX,...) in the test db datapump and exp are not working, then contacted ORACLE support and they concluded that test db sysaux was corrupted.i took RMAN all tablespace bkup except default tablespaces. then created new database using DBCA and now i want to restore and recover all those test db tablesapces but while i'm doing restore its saying
RMAN> restore tablespace MAIN_DATA;
Starting restore at 07-SEP-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=129 device type=DISK
creating datafile file number=20 name=/opt/oracle/oradata/DEV71/main_data01.dbf
restore not done; all files read only, offline, or already restored
Finished restore at 07-SEP-12
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?
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'
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.
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?
we are using dataware house of huge amount of data I want to take backup using rman so that I restore oracle instance and specific tablespace only not full database
We are managing a huge amount of data warehouse on oracle 11.2.0.3.0. We need to take backup using rman of some tablespace not the whole database backup. we need a backup strategy in which we can restore the backup of some tablespace plus oracle instance if any disaster occur.
I have taken backup using rman on test db of system , sysaux , user tablespace then i restore these tablespace successfully and make the remaining tablespace offline , but while open the database it show me below error.
My question is how i backup using rman so that in case of disaster i restore oracle instance plus specific tablespace not full database.
ERROR at line 1: ORA-01152: file 1 was not restored from a sufficiently old backup ORA-01110: data file 1: 'C:APPADMINISTRATORORADATASYSTEMSYSTEM01.DBF'
I have to test a hot rman backup on testing environment and I have some doubts.
STAGE Server 1 production database (linux) backup folder on cifs share windows server Server 2 testing database (linux)
First I installed linux on same network, I gave it access to cifs backup resource, then I installed the same database version than production environment, then I create a typical database with only same database production name. Also the Linux partitions between linux servers are different.
I run DLY cold backups including controlfile & archivelogs and keep 3 gens of backups and archivelogs to 3 days also. What is the correct procedure to restore back to an old cold backup. Database is backed up Mon,Tue,Wed on Thur we require to bring database back to Tuesday DLY security.
I have tried: startup mount restore database from tag 'DLYTUE' recover database
( this just rolls forward on all archive logs once it restores datafiles, not getting to point to alter database open resetlogs.)
Next tried to :
recover database archivelog tag 'DLYTUE' ( same outcome )
What is the correct rman procedure including should I remove old archive logs from working OS directory ? Also need to know once I restore back and open database to TUE security how do you tidy up the archive logs and dumps which are no longer require i.e. : weds..
I have read about using the set until time option but how to I get absolute time from when cold backup completed if this is the correct procedure.
I am doing some test, seeking your expert opinion.I have a database and have the following backup strategy.
1) Database running in archive log mode. 2) First I backup all the table space excluding one tablespace 'DP_TS_LOB'.
RMAN> CONFIGURE EXCLUDE FOR TABLESPACE 'DP_TS_LOBS'; RMAN> BACKUP DATABASE;
3) I take a separate Backup of DP_TS_LOB tablespace.
RMAN> BACKUP TABLESPACE DP_TS_LOB;
4) I backup all the archived redo logs.
RMAN> SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT'; RMAN> backup archivelog all delete input;
Now I wanted to restore the database from the backup excluding the DP_TS_LOB and bring it up and running. DP_TS_LOB is huge and used only on certain work flows. I don't want the database to be down until we restore DP_TS_LOB. I wanted to restore all the other tablespace and bring the database up operational and restore and recover the DP_TS_LOB tablespace datafile's in background taking the datafiles of DP_TS_LOB tablespace offline.I tried the following but unsuccessful.
RMAN> restore controlfile to 'g:ctl_bckctl_01' from autobackup; RMAN> restore spfile to 'g:ctl_bckspfile' from autobackup; RMAN> sql "create PFILE = ''G:ctl_bckPFILE'' from SPFILE = ''G:ctl_bckSPFILE''";
Update the new parameter with new control file name. Copied the control file and parameter file to corresponding location.
First I assumed "Recover Database" will only recover online database files. But got the following error.
RMAN> recover database;
Starting recover at 27-JUL-11 using channel ORA_DISK_1 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of recover command at 07/27/2011 18:23:03 RMAN-06094: datafile 8 must be restored
Then I tried recovering data file separately, but same error.
RMAN> recover datafile 1;
Starting recover at 27-JUL-11 using channel ORA_DISK_1
RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of recover command at 07/27/2011 18:24:30 RMAN-06067: RECOVER DATABASE required with a backup or created control file
I have a doubt regarding the process the RMAN follows for restore and recovery of the database.
My Level 0 full backup completes on Saturdays at around 11 am after taking 8 hours (It starts at 3am).On Sunday, I ask RMAN to restore (on a different box) till Saturday 11:30 am.Then, after the restore is successful, I recover it till 11:45 am.
The recovery also goes fine and Iam able to clone to test box.
Till what time is the database restored? I assume its till 11 am since the L0 backup finishes at 11 am though I have asked it to restore till 11:30 am
During the recovery, ONLY the archives generated between Saturday 3 am and till the time i asked for recovery (Saturday 11:45 am ) are required. But, checking the recovery log file, i was surprised to see that RMAN has restored archive files starting from Friday 9:30 pm (Much before the time the Level 0 backup even started).
I want to restore my database from server x to server y.
The control files on server x are named [$ORACLE_SID]_control01.ctl and [$ORACLE_SID]_control02.ctl.
We have an auto backup of the control files.
When I restore the control files on host y, (from autobackup) the restored controle files have other names: control01.ctl and control02.ctl. After the restore and recover (which goes well) the database does not start correctly.
SQL> ORACLE instance started.
Total System Global Area 626327552 bytes Fixed Size 2224088 bytes Variable Size 411041832 bytes Database Buffers 205520896 bytes Redo Buffers 7540736 bytes Database mounted. ORA-01122: database file 1 failed verification check ORA-01110: data file 1: '/data/coda/coda_system01.dbf' ORA-01202: wrong incarnation of this file - wrong creation time
I have on PC running Windows Server 2003 named "Host A" and another Windows Server 2003 named "Host B".I made a Backup from Host A and want to restore this on Host B with following procedure.
Prepare & Backup: SQLPLUS SYS AS SYSDBA SQL>SHUTDOWN IMMEDIATE SQL>STARTUP MOUNT SQL>ALTER DATABASE ARCHIVELOG; SQL>ALTER DATABASE OPEN; SQL>ARCHIVE LOG LIST; SQL>ALTER SYSTEM ARCHIVE LOG START; SQL>QUIT [code]...
But when i now try to access the Database Control i got following Error:„503 Service Unavailable: Servlet error an exception occurred the current application deployment descriptor do not allow for including it in this response" and the restored Datas are not included.
1. My RAC (old RAC) had got a failures from one node, then there was only one existing node now.
2. I configured a RAC (new RAC) on 2 other servers, both of them (old-RAC and new-RAC) has got same OS version, platform and Oracle version release.
3. I took a full backup yesterday plus archivelog in the node of old-Rac, configure NFS in new-Rac to make the backup within remote-share NFS.
The only problem still now that I've restore/recovery/duplicated single instance, not Rac. So, may you guide me to do it?
Information:
Old-Rac & New-Rac: + Cluster 11g: CFS + Database: 2 nodes with same instance name (cbs1-cbs2) + Location for CRS_HOME and ORACLE_HOME: Same to be. + Location of archivelog: Same to be (+ARCHIVE)
I have no backup taken in my oracle server.Today morning i created a data file and unknowingly deleted it. Now i need to restore the datafile with its contents without using RMAN.
7 of days ago Full backup has been taken to disk due to issues with tape devices.3 days ago tape devices have been fixed and we switched to CommVault managed tape backups. CommVault calls RMAN with following command:
These backups done successfully.Then archivelog backup taken similar way.But when I issue RESTORE DATABASE PREVIEW SUMMARY; RMAN starts with Full backup set, though newer Incremental Level 0 ones are available.Why it does not use these newer ones?
I am trying to restore a backup from a live server to a dev server. Have moved nackup sets. Created a windows service to match the old sid on live system. copied the pfile from live and changed the locations of the folders to suit dev. set oracle_sid to the new sid(as created to match live)
connected to rman startup nomount set dbid to the live number restore controlfile alter database mount catalog'd all the backupsets
[code]....
but it fails when it tries the restore .. see below ..The path it is showing is the old path from the live server, so it appears to eb ignoring my set newname statements even though they succeeded earlier - should be restoring them to d:oracleoradatasun43dev ? Does the whole thing have to be put inside one run block or can I put bits in one run block and other bits outside of it etc?
RMAN> restore database;
Starting restore at 14-FEB-12 using channel ORA_DISK_1 using channel ORA_DISK_2 channel ORA_DISK_1: starting datafile backupset restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set
I have oracle 10g installed on my system and name of the database is "ORCL" for which I have schedule the incremental backup everyday. Mentioned below are the steps followed
*************PARAMETERS TO BE CHANGED****************** configure channel 1 device type disk format '\192.16.17.140dbbackups192.16.17.152oracle_rman_backup_incrementalstd_%U'; configure channel 2 device type disk format '\192.16.17.140dbbackups192.16.17.152oracle_rman_backup_incrementalstd_%U'; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '\192.16.17.140dbbackups192.16.17.152oracle_rman_backup_incrementalcntrl_%U'; CONFIGURE RETENTION POLICY TO REDUNDANCY 7; CONFIGURE CONTROLFILE AUTOBACKUP ON; *******************************************************
*******COMMAND FOR THE CONNECTING TO RMAN************** rman LOG = \192.16.17.140dbbackups192.16.17.152oracle_rman_backup_incremental rmanlog_%date:~4,2%-%date:~7,2%-%date:~10%.txt APPEND CONNECT TARGET SYS/ORACLE@ORCL *******************************************************
********INCREMENTAL BACKUP COMMAND********************* RUN { BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_backup' DATABASE; BACKUP ARCHIVELOG ALL DELETE INPUT; } ********************************************************************
Now I want to restore this backup to some other system with new database. How to do this recovery to some other database on new system.
I am having a issue, we are trying to restore our db from control files using Symantec Backup exec, but job fails giving me error go to table spaces select all table spaces and unchecked roll forward.
i am unable to find way to uncheck the table spaces. Here is the complete description.
Cause
The system catalog tablespace "syscatspace" contains all of the system catalog information for the tables. Syscatspace needs to be rolled forward first, and then the other tablespaces must be rolled forward.
Solution
Workaround:
When the restore operation is run from a tablespace level backup, perform the rollforward for the syscatspace tablespace first and then for other tablespaces.
Execute the rollforward operation as a DBA operation. The sequence of the recovery process should be as follows:
1. Select all tablespaces, uncheck the rollforward option and run the restore job. 2. Run the rollforward operation as a DBA initiated operation:
rollforward syscatspace to point in time / end of logs. e.g. db2 => rollforward database UEXIT to end of logs and complete Tablespace (SYSCATSPACE) online
3. Perform rollforward of all other tablespaces.
e.g. db2 => rollforward database UEXIT to end of logs and complete tablespace (SYSTOO LSPACE,USERSPACE1) online
Refer to IBM DB2 documentation for more information on DBA-initiated operations.
I am trying to create my database on a new server using rman incremental hot backups.
I have already restored and recovered my level 0 database on new server, but i am not able to restore/recover the level 1 backup on the new server. I have transported level 1 backup irom the old server to the new one. Do i need to recover lvl 1 bkp only or restore it also.
I need to restore entire database(sp+control+datafile) to new host.I have started the instance with nomount( and it has created a dummy parameter file).Now, I need to fire the command to restore spfile.
RUN { ALLOCATE CHANNEL c1 DEVICE TYPE sbt PARMS='...'; RESTORE SPFILE TO PFILE '?/oradata/test/inittrgta.ora' FROM AUTOBACKUP; SHUTDOWN ABORT; }
My questions:-
1.How will RMAN find the location of backupset(Since there is controlfile for neither target or catalog database)?
2.How does RMAN reache the backupset in case of a)tape b)disk?
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)
n my last post I asked abt the issues that I was facing while restoring the full backup of RMAN on a new server. I mentioned the steps as well, Now my Question is what If I want to restore the incremental backup on the new server?
What all steps do I have to follow after restoring the zero level backup on a new server.