Restore datafile to standby database
dear all,
i have a standby database which use raw devices under solaris 9.
and a primary database which use filesystem under solaris 9 too.
recently i have a problem which is nologging issue. see ML 290161.1
my question is how we know that when restore to raw devices through rman, will it replace file in the raw?
or should I create new raw and directing my new restore to new raw?
regards
ujang
dear all,
i have a standby database which use raw devices under solaris 9.
and a primary database which use filesystem under solaris 9 too.
recently i have a problem which is nologging issue. see ML 290161.1
my question is how we know that when restore to raw devices through rman, will it replace file in the raw?
or should I create new raw and directing my new restore to new raw?
regards
ujang
Similar Messages
-
Restoring and recovering datafiles in standby database
Hi,
oracle version : 8i(8.1.7.0.0)
os : sun solaris
I have scenerio where i lost some of the datafiles in standby database(physical standby) and i do have standby cold backup 3 months older since database size is 1TB is can i restore the the only lost files from cold backup and recover using archivelog files. since i only lost 4 data files of size 4gb each it will be faster compare to restoring the whole TB size database.
appreciated for valuable inputs.
Thanks
Prakash GRNormal copy command can do your work:
sys@SANTU> startup
ORACLE instance started.
Total System Global Area 535662592 bytes
Fixed Size 1334380 bytes
Variable Size 180355988 bytes
Database Buffers 348127232 bytes
Redo Buffers 5844992 bytes
Database mounted.
Database opened.
sys@SANTU> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 4
Next log sequence to archive 6
Current log sequence 6
sys@SANTU> host copy D:\APP\SANTOSKU\ORADATA\SANTU\USERS01.DBF d:\
1 file(s) copied.
sys@SANTU> shu immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
*Renamed the datafile 'D:\APP\SANTOSKU\ORADATA\SANTU\USERS01.DBF' to 'D:\APP\SANTOSKU\ORADATA\SANTU\USERS011.DBF'*
sys@SANTU> startup
ORACLE instance started.
Total System Global Area 535662592 bytes
Fixed Size 1334380 bytes
Variable Size 180355988 bytes
Database Buffers 348127232 bytes
Redo Buffers 5844992 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: 'D:\APP\SANTOSKU\ORADATA\SANTU\USERS01.DBF'
sys@SANTU> host move d:\USERS01.DBF D:\APP\SANTOSKU\ORADATA\SANTU\
sys@SANTU> shu immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
sys@SANTU> startup
ORACLE instance started.
Total System Global Area 535662592 bytes
Fixed Size 1334380 bytes
Variable Size 180355988 bytes
Database Buffers 348127232 bytes
Redo Buffers 5844992 bytes
Database mounted.
ORA-01113: file 4 needs media recovery
ORA-01110: data file 4: 'D:\APP\SANTOSKU\ORADATA\SANTU\USERS01.DBF'
sys@SANTU> recover datafile 'D:\APP\SANTOSKU\ORADATA\SANTU\USERS01.DBF';
Media recovery complete.
sys@SANTU> alter database open;
Database altered.
sys@SANTU>N.B. I have not done the demo on standby database.
but just i want to know is this procedure is valid that is instead of taking the lost datafiles from production can i use lost datafiles from standby database to recover other standby database.That would be fine.
Regards,
S.K.
Edited by: Santosh Kumar on Oct 8, 2009 11:09 AM -
Relocating datafiles on standby database after mount point on stanby is ful
Hi,
We have a physical standby database.
The location of datafiles on primary database are at /oracle/oradata/ and the location of datafiles on standby database are at /oracle/oradata/
Now we are facing a situation of mount mount getting full on standby database so we need to move some tablespaces to another location on standby.
Say old location is /oracle/oradata/ and new location is /oradata_new/ and the tablespaces to be relocated are say tab1 and tab2.
Can anybody tell me whether following steps are correct.
1. Stop managed recovery on standby database
alter database recover managed standby database cancel;
2. Shutdown standby database
shutdown immediate;
3. Open standby database in mount stage
startup mount;
4. Copy the datafiles to new location say /oradata_new/ using os level command
4. Rename the datafile
alter database rename file
'/oracle/oradata/tab1.123451.dbf', '/oracle/oradata/tab1.123452.dbf','/oracle/oradata/tab2.123451.dbf',''/oracle/oradata/tab2.123452.dbf'
to '/oradata_new/tab1.123451.dbf', '/oradata_new/tab1.123452.dbf','/oradata_new/tab2.123451.dbf',''/oradata_new/tab2.123452.dbf';
5. Edit the parameter db_file_name_convert
alter system set db_file_name_convert='/oracle/oradata/tab1','/oradata_new/tab1','/oracle/oradata/tab2','/oradata_new/tab2'
6. Start a managed recovery on standby database
alter database recover managed standby database disconnect from session;
I am littelbit confused in step 5 as we want to relocate only two tablespaces and not all tablespaces so we have used.
Can we use db_file_name_convert like this i.e. does this work for only two tablespaces tab1 and tab2.
Thanks & Regards
GirishAhttp://download.oracle.com/docs/cd/B19306_01/server.102/b14239/manage_ps.htm#i1010428
8.3.4 Renaming a Datafile in the Primary Database
When you rename one or more datafiles in the primary database, the change is not propagated to the standby database. Therefore, if you want to rename the same datafiles on the standby database, you must manually make the equivalent modifications on the standby database because the modifications are not performed automatically, even if the STANDBY_FILE_MANAGEMENT initialization parameter is set to AUTO.
The following steps describe how to rename a datafile in the primary database and manually propagate the changes to the standby database.
To rename the datafile in the primary database, take the tablespace offline:
SQL> ALTER TABLESPACE tbs_4 OFFLINE;
Exit from the SQL prompt and issue an operating system command, such as the following UNIX mv command, to rename the datafile on the primary system:
% mv /disk1/oracle/oradata/payroll/tbs_4.dbf
/disk1/oracle/oradata/payroll/tbs_x.dbf
Rename the datafile in the primary database and bring the tablespace back online:
SQL> ALTER TABLESPACE tbs_4 RENAME DATAFILE 2> '/disk1/oracle/oradata/payroll/tbs_4.dbf'
3> TO '/disk1/oracle/oradata/payroll/tbs_x.dbf';
SQL> ALTER TABLESPACE tbs_4 ONLINE;
Connect to the standby database, query the V$ARCHIVED_LOG view to verify all of the archived redo log files are applied, and then stop Redo Apply:
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# APP
8 YES
9 YES
10 YES
11 YES
4 rows selected.
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
Shut down the standby database:
SQL> SHUTDOWN;
Rename the datafile at the standby site using an operating system command, such as the UNIX mv command:
% mv /disk1/oracle/oradata/payroll/tbs_4.dbf /disk1/oracle/oradata/payroll/tbs_x.dbf
Start and mount the standby database:
SQL> STARTUP MOUNT;
Rename the datafile in the standby control file. Note that the STANDBY_FILE_MANAGEMENT initialization parameter must be set to MANUAL.
SQL> ALTER DATABASE RENAME FILE '/disk1/oracle/oradata/payroll/tbs_4.dbf'
2> TO '/disk1/oracle/oradata/payroll/tbs_x.dbf';
On the standby database, restart Redo Apply:
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
2> DISCONNECT FROM SESSION;
If you do not rename the corresponding datafile at the standby system, and then try to refresh the standby database control file, the standby database will attempt to use the renamed datafile, but it will not find it. Consequently, you will see error messages similar to the following in the alert log:
ORA-00283: recovery session canceled due to errors
ORA-01157: cannot identify/lock datafile 4 - see DBWR trace file
ORA-01110: datafile 4: '/Disk1/oracle/oradata/payroll/tbs_x.dbf' -
How to add datafile to standby database
Hi,
We have standby database on another site and we are using manual recovery. How to add datafile to standby database after datafile is added to primary database.
We are on Oracle 9i R2.
Please help.
Thanks in advanceHi,
When you recover the standby database after you added a datafile to the production, you will get an error that the file that needs recovery does not exist.
At this point you can connect to the standby and issue:
alter database create datafile '<original_name>' as '<new_name>';the new name is optional if the location of the files are the same.
After that, you can continue recovering the standby database.
Liron Amitzi
Senior DBA consultant
[www.dbsnaps.com]
[www.orbiumsoftware.com] -
Restore production from standby database
Hi,
I would like to make a standby database for my production database.
But, I have a basic question to restore my production database from standby database. There is a method to make it ?
If I lost all files from production database, how to restore from my standby datase (which become in this case my new production database) ?
thanks in advance for your help.
gnom92.* I make a copy datafiles from my new production database (old standby database) on old production (where crash)
* With my old production database, I make a standby database on new production database (old standby)
* I can close the new production database and open the new standby database in read / write mode, and this is my production database.
* After what I recreate my standby database (old standby,newproduction), or can I return in recover standby mode ?
thank you very much for your patience.
gnom92. -
Error when trying to recover datafile from standby database to primary
hi friends,
getting problem with restoring datafile from backupset taken on standby database to primary database.
os: windows server 2003
db: oracle 11gR1(11.1.0.6)
i've configured standby database on two different hosts.
host1 - primary (db_uinque_name= prod)
host2 - standby (db_uniue_name= prodsby)
I've configure both database with recovery catalog. I take backup on standby database. users' datafile of primary database has been lost.i'm trying to restore from the backupsets taken on standby database.
with the help of - http://download.oracle.com/docs/cd/B28359_01/server.111/b28294/rman.htm#BAJCEFEG
on primary
c:\>rman target sys/password catalog rcat/password
rman>list backup for db_unique_name prodsby;
display the backupsets
rman>restore datafile 4;
Starting restore at 06-NOV-08
starting full resync of recovery catalog
full resync complete
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1051 device type=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 11/06/2008 12:12:18
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 4 found to restore
also use to tag to restore the datafile
rman>restore datafile 4 from tag='base0_prodsby';
Starting restore at 06-NOV-08
using channel ORA_DISK_1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 11/06/2008 11:27:21
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 4 found to restore
i'm getting above errors when try to restore the datafile.
when i issue the following command.
BACKUP AS COPY DATAFILE 4 AUXILIARY FORMAT 'C:\app\Administrator\oradata\prod\USERS01.DBF';
Starting backup at 06-NOV-08
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1068 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=C:\APP\ADMINISTRATOR\ORADATA\prod\USERS01.
DBF
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 11/06/2008 12:49:
15
ORA-17628: Oracle error 19505 returned by remote Oracle server
please friends, try to help me to solve the problem.
Thanks,
Vihanghi.
Its not necessary its a otherway around to recover datafile from this backupset and apply archivelogs to make datafile consistent.
yes, it ain't the right way to restore backup to primary location.
so how would i connect to standby database with primary and recovery catalog.
i need to connect to recovery catalog and primary site because i need to restore to primary location and recovery catalog contain all metadata and backupsets related information.
i also tried the following steps from oracle documentation.
Connect to the standby database as the target database:
CONNECT TARGET sys@standby
You are prompted for a password:
target database Password: password
Connect to the primary database as the auxiliary database:
CONNECT AUXILIARY sys@primary
You are prompted for a password:
target database Password: password
Back up the datafile on the standby host across the network to a location on the primary host. For example, suppose that /disk1/df2.dbf is the name of datafile 2 on the standby host. Suppose that /disk8/datafile2.dbf is the name of datafile 2 on the primary host. The following command would copy datafile 2 over the network to /disk9/df2copy.dbf:
BACKUP AS COPY DATAFILE 2 AUXILIARY FORMAT '/disk9/df2copy.dbf';
Starting backup at 06-NOV-08
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1068 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=C:\APP\ADMINISTRATOR\ORADATA\prod\USERS01.
DBF
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 11/06/2008 12:49:
15
ORA-17628: Oracle error 19505 returned by remote Oracle server
getting this error. -
Restoring backup of standby database
Hi,
I have an issue logging into my database as sysdba. I'm getting the error ORA-01031: Insufficient priveleges. Here are the facts surrounding the issue:
1. I have a backup (not a clone) of my standby database.
2. I am restoring this backup to a new server I just built.
3. The O/S version and directory structure is exactly the same as my source.
4. I've restored my backup to my new server. When I set the DB environment variable and then try to logon with sqlplus '/ as sysdba', I get ORA-01031.
Here's what I've already tried:
1. I've verified my SID and ORACLE_HOME are being set properly.
2. TWO_TASK is not set.
3. I have confirmed $ORACLE_HOME/rdbms/lib/config.c is correct.
4. I've performed all the checks on Metalink Note 69642.1.
I'm completely stumped at this time. I even rebuilt the whole thing from scratch just to ensure that I wasn't missing something. The only thing I can think of is that this is a standby database and it needs to be 'failed over'. However, I would still need to logon as sysdba for that so I'm still stuck.
Can anyone shed some light on what else I can check? My DB version is 10.2.0.4. running RHEL 4 Update 7. I'm also running EBS 11.5.10.2.
Thanks.
Aliyah.Problem has been resolved. It turned out that I overlooked my config.c file. In there, my oracle user was not set to the dba group. So I had to change it, and relink the link. All is well now. Thanks.
-
ORA-01157: cannot identify/lock data file error in standby database.
Hi,
i have a primary database and standby database (11.2.0.1.0) running in ASM with different diskgroup names. I applied an incremental backup on standby database to resolve archive log gap and generated a controlfile for standby in primary database and restored the controlfile in standby database.But when i started the MRP process its not starting and thows error in alert log ORA-01157: cannot identify/lock data file. When i queried the standby database file it shows the location on primary database datafiles names not the standby database.
PRIMARY DATABASE
SQL> select name from v$datafile;
NAME
+DATA/oradb/datafile/system.256.788911005
+DATA/oradb/datafile/sysaux.257.788911005
+DATA/oradb/datafile/undotbs1.258.788911005
+DATA/oradb/datafile/users.259.788911005
STANDBY DATABASE
SQL> select name from v$datafile;
NAME
+STDBY/oradb/datafile/system.256.788911005
+STDBY/oradb/datafile/sysaux.257.788911005
+STDBY/oradb/datafile/undotbs1.258.788911005
+STDBY/oradb/datafile/users.259.788911005
The Actual physical location of standby database files in ASM in standby server is shown below
ASMCMD> pwd
+STDBY/11gdb/DATAFILE
ASMCMD>
ASMCMD> ls
SYSAUX.259.805921967
SYSTEM.258.805921881
UNDOTBS1.260.805922023
USERS.261.805922029
ASMCMD>
ASMCMD> pwd
+STDBY/11gdb/DATAFILE
i even tried to rename the datafiles in standby database but it throws error
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01275: Operation RENAME is not allowed if standby file management is
automatic.
Regards,
007Hi saurabh,
I tried to rename the datafiles in standby database after restoring it throws the below error
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01275: Operation RENAME is not allowed if standby file management is
automatic.
Also in my pfile i have mentioned the below parameters
*.db_create_file_dest='+STDBY'
*.db_domain=''
*.db_file_name_convert='+DATA','+STDBY'
*.db_name='ORADB'
*.db_unique_name='11GDB'
Regards,
007 -
We have 11grac implemented on windows with a physical standby on DR site, please advise how I can take backup of the phyiscal standby database?
I have done cold backups of the RAC standby databases in ASM from another database on the same box that is open using the DBMS_FILE_TRANSFER.COPY_FILE unility. I do the following steps 1) Use the following script to create a cold backups script when the standby is in mount mode. 2) Shutdown the standby. 3) Run the result script in another database that is in open mode (the DBMS_FILE_TRANSFER.COPY_FILE will only run in an open database). 4) restart the standby application of archive logs after the cold backup is done.
-- script to create cold backup of RAC ASM Standby
set pages 0
set feedback off
set lines 300
col dummy noprint
set wrap off
-- for gzip's to work
col name for a50
select name from v$datafile;
select 'cd /stg/oracle/backups/cold_backup' from dual
select 'CREATE OR REPLACE DIRECTORY asm_files AS '''||'&substr_ASM_PREFIX_OF_FILENAME'||''' ;' from dual
-- grants not needed if running from sys
select 'GRANT WRITE ON DIRECTORY asm_files TO "ENWEBP1";' from dual
select 'CREATE OR REPLACE DIRECTORY DSK_FILES AS ''/stg/oracle/backups/cold_backup'';' from dual
select 'GRANT WRITE ON DIRECTORY dsk_files TO "ENWEBP1";' from dual
select substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||'.A' dummy,'exec DBMS_FILE_TRANSFER.COPY_FILE ( ''asm_files'' , '''
||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)
||''' , ''dsk_files'' , '''||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||''' );' cmd
from v$datafile
where upper(substr(name,1,length('&substr_ASM_PREFIX_OF_FILENAME')))=upper('&substr_ASM_PREFIX_OF_FILENAME')
union
select substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||'.B' dummy,'host gzip '
||substr(name,length(name)-instr(reverse(name),'/',1)+2,100) cmd from v$datafile
where upper(substr(name,1,length('&substr_ASM_PREFIX_OF_FILENAME')))=upper('&substr_ASM_PREFIX_OF_FILENAME')
order by dummy
select name||'.A' dummy,'CREATE OR REPLACE DIRECTORY asm_files AS '''||substr(name,1,length(name)-instr(reverse(name),'/',1))||''' ;'
from v$controlfile
union
select name||'.b' dummy,'exec DBMS_FILE_TRANSFER.COPY_FILE ( ''asm_files'' , '''||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)
||''' , ''dsk_files'' , '''||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||''' );'
from v$controlfile order by dummy
set pages 100
set feedback on
If I do happen to restore, I 1) Shutdown the standby 2) Erase datafiles and controlfiles (I keep the redo logs but that last script later (see below) will drop and recreate them with the clear command so you can also remove the redo logs if you wish). 3) Use the following script to create a restore script.
-- Script to create cold restore of RAC standby database in ASM
set pages 0
set feedback off
set lines 300
col dummy noprint
set wrap off
-- for gzip's to work
col name for a50
select name from v$datafile;
select 'cd /stg/oracle/backups/cold_backup' from dual
select 'rm '||name from v$datafile order by name
select 'CREATE OR REPLACE DIRECTORY asm_files AS '''||'&substr_ASM_PREFIX_OF_FILENAME'||''' ;' from dual
-- grants not needed if running from sys
select 'GRANT WRITE ON DIRECTORY asm_files TO "ENWEBP1";' from dual
select 'CREATE OR REPLACE DIRECTORY DSK_FILES AS ''/stg/oracle/backups/cold_backup'';' from dual
select 'GRANT WRITE ON DIRECTORY dsk_files TO "ENWEBP1";' from dual
select substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||'.A' dummy,'host gunzip '
||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||'.gz' cmd from v$datafile
where upper(substr(name,1,length('&substr_ASM_PREFIX_OF_FILENAME')))=upper('&substr_ASM_PREFIX_OF_FILENAME')
union
select substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||'.B' dummy,'exec DBMS_FILE_TRANSFER.COPY_FILE ( ''dsk_files'' , '''
||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)
||''' , ''asm_files'' , '''||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||''' );' cmd
from v$datafile
where upper(substr(name,1,length('&substr_ASM_PREFIX_OF_FILENAME')))=upper('&substr_ASM_PREFIX_OF_FILENAME')
union
select substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||'.C' dummy,'host gzip '
||substr(name,length(name)-instr(reverse(name),'/',1)+2,100) cmd from v$datafile
where upper(substr(name,1,length('&substr_ASM_PREFIX_OF_FILENAME')))=upper('&substr_ASM_PREFIX_OF_FILENAME')
order by dummy
select name||'.A' dummy,'CREATE OR REPLACE DIRECTORY asm_files AS '''||substr(name,1,length(name)-instr(reverse(name),'/',1))||''' ;'
from v$controlfile
union
select name||'.b' dummy,'exec DBMS_FILE_TRANSFER.COPY_FILE ( ''dsk_files'' , '''||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)
||''' , ''asm_files'' , '''||substr(name,length(name)-instr(reverse(name),'/',1)+2,100)||''' );'
from v$controlfile order by dummy
set pages 100
set feedback on
and finally I run 4) clear redo logs with the following script:
set pages 0
set feedback off
select 'alter database recover managed standby database cancel;' from dual;
select 'alter database clear logfile group '||group#||';' from v$log order by group#;
set feedback on
set pages 100
and 5) Open database and restart replication
For Example:
ENWEBP1 > @cr8_COLD_BACKUP_dbms_FILE_TRANSFER_COPY_FILE_from_ASM_to_FS.sql
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
cd /stg/oracle/backups/cold_backup
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp/datafile' ;
GRANT WRITE ON DIRECTORY asm_files TO "ENWEBP1";
CREATE OR REPLACE DIRECTORY DSK_FILES AS '/stg/oracle/backups/cold_backup';
GRANT WRITE ON DIRECTORY dsk_files TO "ENWEBP1";
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'content_data.290.623955671' , 'dsk_files' , 'content_data.290.623955671' );
host gzip content_data.290.623955671
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'gsis_data.284.623955547' , 'dsk_files' , 'gsis_data.284.623955547' );
host gzip gsis_data.284.623955547
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'site_data.288.623955617' , 'dsk_files' , 'site_data.288.623955617' );
host gzip site_data.288.623955617
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'sysaux.264.621275031' , 'dsk_files' , 'sysaux.264.621275031' );
host gzip sysaux.264.621275031
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'system.262.621275025' , 'dsk_files' , 'system.262.621275025' );
host gzip system.262.621275025
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'undotbs1.263.621275031' , 'dsk_files' , 'undotbs1.263.621275031' );
host gzip undotbs1.263.621275031
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'undotbs2.266.621275035' , 'dsk_files' , 'undotbs2.266.621275035' );
host gzip undotbs2.266.621275035
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'undotbs3.267.621275037' , 'dsk_files' , 'undotbs3.267.621275037' );
host gzip undotbs3.267.621275037
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'users.268.621275039' , 'dsk_files' , 'users.268.621275039' );
host gzip users.268.621275039
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp' ;
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'control01.ctl' , 'dsk_files' , 'control01.ctl' );
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp' ;
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'control02.ctl' , 'dsk_files' , 'control02.ctl' );
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp' ;
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'asm_files' , 'control03.ctl' , 'dsk_files' , 'control03.ctl' );
ENWEBP1 > @cr8_COLD_RESTORE_dbms_FILE_TRANSFER_COPY_FILE_from_FS_to_ASM.sql
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp/datafile' ;
GRANT WRITE ON DIRECTORY asm_files TO "ENWEBP1";
CREATE OR REPLACE DIRECTORY DSK_FILES AS '/stg/oracle/backups/cold_backup';
GRANT WRITE ON DIRECTORY dsk_files TO "ENWEBP1";
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
Enter value for substr_asm_prefix_of_filename: +DATA1/nwebp/datafile
cd /stg/oracle/backups/cold_backup
rm +DATA1/nwebp/datafile/content_data.290.623955671
rm +DATA1/nwebp/datafile/gsis_data.284.623955547
rm +DATA1/nwebp/datafile/site_data.288.623955617
rm +DATA1/nwebp/datafile/sysaux.264.621275031
rm +DATA1/nwebp/datafile/system.262.621275025
rm +DATA1/nwebp/datafile/undotbs1.263.621275031
rm +DATA1/nwebp/datafile/undotbs2.266.621275035
rm +DATA1/nwebp/datafile/undotbs3.267.621275037
rm +DATA1/nwebp/datafile/users.268.621275039
rm +DATA3/nwebp/datafile/content_index01.dbf
rm +DATA3/nwebp/datafile/gsis_index01.dbf
rm +DATA3/nwebp/datafile/polls_data01.dbf
rm +DATA3/nwebp/datafile/polls_index01.dbf
rm +DATA3/nwebp/datafile/profile_data01.dbf
rm +DATA3/nwebp/datafile/profile_index01.dbf
rm +DATA3/nwebp/datafile/site_index01.dbf
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp/datafile' ;
GRANT WRITE ON DIRECTORY asm_files TO "ENWEBP1";
CREATE OR REPLACE DIRECTORY DSK_FILES AS '/stg/oracle/backups/cold_backup';
GRANT WRITE ON DIRECTORY dsk_files TO "ENWEBP1";
host gunzip content_data.290.623955671.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'content_data.290.623955671' , 'asm_files' , 'content_data.290.623955671' );
host gzip content_data.290.623955671
host gunzip gsis_data.284.623955547.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'gsis_data.284.623955547' , 'asm_files' , 'gsis_data.284.623955547' );
host gzip gsis_data.284.623955547
host gunzip site_data.288.623955617.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'site_data.288.623955617' , 'asm_files' , 'site_data.288.623955617' );
host gzip site_data.288.623955617
host gunzip sysaux.264.621275031.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'sysaux.264.621275031' , 'asm_files' , 'sysaux.264.621275031' );
host gzip sysaux.264.621275031
host gunzip system.262.621275025.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'system.262.621275025' , 'asm_files' , 'system.262.621275025' );
host gzip system.262.621275025
host gunzip undotbs1.263.621275031.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'undotbs1.263.621275031' , 'asm_files' , 'undotbs1.263.621275031' );
host gzip undotbs1.263.621275031
host gunzip undotbs2.266.621275035.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'undotbs2.266.621275035' , 'asm_files' , 'undotbs2.266.621275035' );
host gzip undotbs2.266.621275035
host gunzip undotbs3.267.621275037.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'undotbs3.267.621275037' , 'asm_files' , 'undotbs3.267.621275037' );
host gzip undotbs3.267.621275037
host gunzip users.268.621275039.gz
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'users.268.621275039' , 'asm_files' , 'users.268.621275039' );
host gzip users.268.621275039
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp' ;
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'control01.ctl' , 'asm_files' , 'control01.ctl' );
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp' ;
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'control02.ctl' , 'asm_files' , 'control02.ctl' );
CREATE OR REPLACE DIRECTORY asm_files AS '+DATA1/nwebp' ;
exec DBMS_FILE_TRANSFER.COPY_FILE ( 'dsk_files' , 'control03.ctl' , 'asm_files' , 'control03.ctl' );
ENWEBP1 > @RMAN_Cr8_Clear_Standby_logs.sql
alter database recover managed standby database cancel;
alter database clear logfile group 1;
alter database clear logfile group 2;
alter database clear logfile group 3;
alter database clear logfile group 4;
alter database clear logfile group 5;
alter database clear logfile group 6;
alter database clear logfile group 7;
alter database clear logfile group 8;
alter database clear logfile group 9;
alter database clear logfile group 10;
alter database clear logfile group 11;
alter database clear logfile group 12;
alter database clear logfile group 13;
alter database clear logfile group 14;
alter database clear logfile group 15;
Alan -
Hi,
I have added a datafile in primary database . In my standby database server i don't have space in that filesystem to create a datafile.In previously we create the standby database by using standby_file_management=auto.
How to troubleshoot that problem to create a datafile in standby database server.
Please suggest me .user8443904 wrote:
Hi,
I have added a datafile in primary database . In my standby database server i don't have space in that filesystem to create a datafile.In previously we create the standby database by using standby_file_management=auto.
How to troubleshoot that problem to create a datafile in standby database server.The simpliest way is to increase disk space. -
I got the above error while i restore the standby database using RMAN backu
Dear All,
RMAN> crosscheck archivelog all;
using target database controlfile instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=14 devtype=DISK
specification does not match any archive log in the recovery catalogi got the above error while i restore the standby database using RMAN backup from production.
Help need.i take the backup without catalog database.
regards,
DBrman> list backup;
it shows lengthier but i showed only the corresponding
BS Key Type LV Size Device Type Elapsed Time Completion Time
3479 Full 17G DISK 01:29:42 09-FEB-13
BP Key: 3479 Status: AVAILABLE Tag: 09FEB13_FULL_ESMSRV1_DB
Piece Name: /oradatabkp/rman/esmsrv1_full_db_09feb13
SPFILE Included: Modification time: 08-FEB-13
List of Datafiles in backup set 3479
File LV Type Ckp SCN Ckp Time Name
1 Full 1759250260 09-FEB-13 /esmsrv1/dbs/system01.dbf
2 Full 1759250260 09-FEB-13 /esmsrv1/dbs/undotbs01.dbf
3 Full 1759250260 09-FEB-13 /esmsrv1/dbs/cwmlite01.dbf
4 Full 1759250260 09-FEB-13 /esmsrv1/dbs/drsys01.dbf
5 Full 1759250260 09-FEB-13 /esmsrv1/dbs/example01.dbf
6 Full 1759250260 09-FEB-13 /esmsrv1/dbs/indx01.dbf
7 Full 1759250260 09-FEB-13 /esmsrv1/dbs/odm01.dbf
8 Full 1759250260 09-FEB-13 /esmsrv1/dbs/tools01.dbf
9 Full 1759250260 09-FEB-13 /esmsrv1/dbs/users01.dbf
10 Full 1759250260 09-FEB-13 /esmsrv1/dbs/xdb01.dbf
11 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_default_seg_001.dbf
12 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_property_ind_seg_001.dbf
13 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_property_seg_001.dbf
14 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_upload_ind_seg_001.dbf
15 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_upload_seg_001.dbf
16 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_rate_ind_seg_001.dbf
17 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_rate_seg_001.dbf
18 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_summary_ind_seg_001.dbf
19 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_summary_seg_001.dbf
20 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_overflow_seg_001.dbf
21 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_overflow_seg_002.dbf
22 Full 1759250260 09-FEB-13 /esmsrv1/dbs/dpipe_summary_seg_002.dbf
23 Full 1759250260 09-FEB-13 /esmsrv1/dbs/perfstat_001.dbf
39 Full 1759250260 09-FEB-13 /esmsrv1/dbs/oem_repository.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
3480 Full 17G DISK 01:21:30 09-FEB-13
BP Key: 3480 Status: EXPIRED Tag: TAG20130209T200021
Piece Name: /oradatabkp/rman/esmsrv1/esmsrv1_full_Feb09
SPFILE Included: Modification time: 08-FEB-13
List of Datafiles in backup set 3480
File LV Type Ckp SCN Ckp Time Name
1 Full 1759422265 09-FEB-13 /esmsrv1/dbs/system01.dbf
2 Full 1759422265 09-FEB-13 /esmsrv1/dbs/undotbs01.dbf
3 Full 1759422265 09-FEB-13 /esmsrv1/dbs/cwmlite01.dbf
4 Full 1759422265 09-FEB-13 /esmsrv1/dbs/drsys01.dbf
5 Full 1759422265 09-FEB-13 /esmsrv1/dbs/example01.dbf
6 Full 1759422265 09-FEB-13 /esmsrv1/dbs/indx01.dbf
7 Full 1759422265 09-FEB-13 /esmsrv1/dbs/odm01.dbf
8 Full 1759422265 09-FEB-13 /esmsrv1/dbs/tools01.dbf
9 Full 1759422265 09-FEB-13 /esmsrv1/dbs/users01.dbf
10 Full 1759422265 09-FEB-13 /esmsrv1/dbs/xdb01.dbf
11 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_default_seg_001.dbf
12 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_property_ind_seg_001.dbf
13 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_property_seg_001.dbf
14 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_upload_ind_seg_001.dbf
15 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_upload_seg_001.dbf
16 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_rate_ind_seg_001.dbf
17 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_rate_seg_001.dbf
18 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_summary_ind_seg_001.dbf
19 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_summary_seg_001.dbf
20 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_overflow_seg_001.dbf
21 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_overflow_seg_002.dbf
22 Full 1759422265 09-FEB-13 /esmsrv1/dbs/dpipe_summary_seg_002.dbf
23 Full 1759422265 09-FEB-13 /esmsrv1/dbs/perfstat_001.dbf
39 Full 1759422265 09-FEB-13 /esmsrv1/dbs/oem_repository.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
3481 Full 4M DISK 00:00:03 09-FEB-13
BP Key: 3481 Status: AVAILABLE Tag: TAG20130209T212205
Piece Name: /oradatabkp/rman/esmsrv1/esmsrv1_controlfile_copy_Feb09
Controlfile Included: Ckp SCN: 1759462488 Ckp time: 09-FEB-13
BS Key Type LV Size Device Type Elapsed Time Completion Time
3482 Full 0 DISK 00:00:01 09-FEB-13
BP Key: 3482 Status: AVAILABLE Tag: TAG20130209T212212
Piece Name: /oradatabkp/rman/esmsrv1/esmsrv1_spfile_copy_Feb09
SPFILE Included: Modification time: 08-FEB-13
ls -l /oradatabkp
root@drsrv1#ls -l /oradatabkp
total 1108672
drwxr-xr-x 2 ovsd dba 96 Sep 27 2009 alert_bkp
-rw-r--r-- 1 oracle dba 195 Mar 15 2007 create.sql
drwxr-xr-x 2 oracle dba 8192 Aug 7 2009 ctrl_bkp
-rw-r--r-- 1 root sys 565114880 Apr 24 2007 drsrv1.tar
drwxrwxrwx 2 root sys 96 Jun 17 2011 drsrv2-ignitebkp
drwxr-xr-x 4 root sys 96 Apr 24 2007 esmsrv1
-rw-r----- 1 root sys 1613824 Feb 22 2007 esmsrv1stby.ctl
-rw-r--r-- 1 esmsrv1 dba 5120 Dec 31 2009 esmtables.dmp
-rw-r--r-- 1 esmsrv1 dba 538 Dec 31 2009 esmtables.log
drwxrwxrwx 4 root sys 8192 Mar 10 2009 export
drwxr-xr-x 8 root sys 8192 Apr 24 2007 finalbackup
-rw-r--r-- 1 oracle dba 3820 Sep 5 2008 invalid.sql
-rw-r--r-- 1 esmsrv1 dba 303104 Dec 31 2009 kirdevports.dmp
-rw-r--r-- 1 esmsrv1 dba 591 Dec 31 2009 kirdevports.log
drwxr-xr-x 2 root root 96 Feb 12 2007 lost+found
-rw-r--r-- 1 oracle dba 24954 Aug 9 2009 ovcontrol-090909.ctl
drwxr-xr-x 22 root sys 8192 Apr 24 2007 ovpi
drwxr-xr-x 2 oracle dba 8192 Aug 7 2009 pfile_bkp
drwxrw-rw- 4 oracle dba 8192 Feb 10 15:25 rman
drwxr-xr-x 28 root sys 8192 Feb 1 17:15 schedbkp
drwxr-xr-x 2 oracle dba 8192 Jul 11 2011 sdnnm
-rw-r--r-- 1 esmsrv1 dba 2196 Dec 31 2009 srirdevports.log
drwxr-xr-x 2 oracle dba 96 Mar 13 2009 statsreport
-rw-r--r-- 1 oracle dba 966 Mar 15 2007 tbs.sql
drwxr-xr-x 5 oracle dba 96 Mar 16 2007 testov
drwxr-xr-x 2 root sys 442368 Mar 11 2009 trendadm_files
root@drsrv1#ls -l /oradatabkp/rman
total 37244448
drwxr-xr-x 2 oracle dba 8192 Feb 10 15:25 esmsrv1
-rw-r----- 1 oracle dba 19068198912 Feb 9 14:21 esmsrv1_full_db_09feb13
drwxrw-rw- 2 oracle dba 8192 Feb 9 21:36 openview
-rw-r--r-- 1 oracle dba 920442 Feb 9 21:37 rmanbkp-all.log -
How to restore a database from backup taken in standby database
Its our environment standard to run backup in standby database.
Now we have to perform refresh production database to UAT database.
I have performed normal refresh/duplicate. Is there any additional procedures need to be followed to perform refresh from standby database backupRMAN Restoration to New Server with Different Directory and New Database Name
In this case, I have an existing production database with RMAN Level 0 backup:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'C:\flash_recovery_area\galaxy\backupsets\autobackup\SAMSUNG-ctl_%F';
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:\flash_recovery_area\galaxy\backupsets\level0\level0-%d-%T-%U' MAXPIECESIZE 4G;
DELETE NOPROMPT ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE - 7';
SHOW ALL;
REPORT SCHEMA;
LIST BACKUP OF DATABASE;
REPORT NEED BACKUP;
REPORT UNRECOVERABLE;
LIST EXPIRED BACKUP BY FILE;
LIST ARCHIVELOG ALL;
REPORT OBSOLETE;
CROSSCHECK BACKUP DEVICE TYPE DISK;
CROSSCHECK COPY OF ARCHIVELOG ALL;
DELETE NOPROMPT EXPIRED BACKUP DEVICE TYPE DISK;
DELETE NOPROMPT OBSOLETE DEVICE TYPE DISK;
RUN {
sql 'alter system archive log current';
BACKUP INCREMENTAL LEVEL 0 DATABASE PLUS ARCHIVELOG DELETE INPUT;
LIST BACKUP OF DATABASE;
REPORT NEED BACKUP;
REPORT UNRECOVERABLE;
LIST EXPIRED BACKUP BY FILE;
LIST ARCHIVELOG ALL;
REPORT OBSOLETE;
CROSSCHECK BACKUP DEVICE TYPE DISK;
CROSSCHECK COPY OF ARCHIVELOG ALL;
DELETE NOPROMPT EXPIRED BACKUP DEVICE TYPE DISK;
DELETE NOPROMPT OBSOLETE DEVICE TYPE DISK;
The backupsets will be restored into a new server with different file structure. The database will also be different. In the new server, I have created a blank database (SID or CUSTOM database with the name DBGRID). This is easier so I won't have to create any directories, user ORADIM or create new PWFile.
This document assumes that a blank (starter) database has been created in the new server. The RDBMS version is the same as the source database.
In this example, the source database name is GALAXY and the target database name is DBGRID.
Let me know if you have any feedback or comments. All I want is to share these steps with you and make it better so we can help other DBA's as well.
Steps start here
-->
ORIGINAL DATABASE: GALAXY
DUPLICATE DATABASE: DBGRID
FROM THE SOURCE DATABASE (GALAXY)
1. Backup the database using RMAN incremental backups.
2. Check the RMAN logs generated and look for the result of the command:
C:\Users\Administrator>set ORACLE_SID=GALAXY
C:\Users\Administrator>rman target /
Recovery Manager: Release 11.2.0.1.0 - Production on Wed Aug 1 06:55:08 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database: GALAXY (DBID=3578870300)
RMAN> report schema;
using target database control file instead of recovery catalog
Report of database schema for database with db_unique_name GALAXY
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
1 680 SYSTEM *** C:\ORACLE\ORADATA\GALAXY\SYSTEM01.DBF
2 510 SYSAUX *** C:\ORACLE\ORADATA\GALAXY\SYSAUX01.DBF
3 140 UNDOTBS1 *** C:\ORACLE\ORADATA\GALAXY\UNDOTBS01.DBF
4 5 USERS *** C:\ORACLE\ORADATA\GALAXY\USERS01.DBF
5 106 EXAMPLE *** C:\ORACLE\ORADATA\GALAXY\EXAMPLE01.DBF
6 2048 ALLINDEX *** C:\ORACLE\ORADATA\GALAXY\ALLINDEX01.DBF
List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
1 29 TEMP 32767 C:\ORACLE\ORADATA\GALAXY\TEMP01.DBF
This command shows all the physical database files that will be backed-up by the current RMAN job.
List the online redolog files:
SQL> select * from v$logfile;
GROUP# STATUS TYPE MEMBER IS_
3 ONLINE C:\ORACLE\ORADATA\GALAXY\REDO03A.LOG NO
3 ONLINE C:\ORACLE\ORADATA\GALAXY\REDO03B.LOG NO
2 ONLINE C:\ORACLE\ORADATA\GALAXY\REDO02A.LOG NO
2 ONLINE C:\ORACLE\ORADATA\GALAXY\REDO02B.LOG NO
1 ONLINE C:\ORACLE\ORADATA\GALAXY\REDO01A.LOG NO
1 ONLINE C:\ORACLE\ORADATA\GALAXY\REDO01B.LOG NO
6 rows selected.
3. Since the target server has different structure, it is easier to use a pfile to startup the database rather than restoring the spfile from backup.
C:\Users\Administrator>set ORACLE_SID=GALAXY
C:\Users\Administrator>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 1 06:56:14 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> create pfile='C:\TEMP\initGALAXYrman.ora' from spfile;
File created.
4. Edit the pfile to have the following parameters:
(These parameters has been edited to fit the target database requirements)
galaxy entries has been changed to dbgrid. Directories has been corrected as well.
dbgrid.__db_cache_size=192937984
dbgrid.__java_pool_size=4194304
dbgrid.__large_pool_size=4194304
dbgrid.__oracle_base='D:\app\Administrator'#ORACLE_BASE set from environment
dbgrid.__pga_aggregate_target=281018368
dbgrid.__sga_target=524288000
dbgrid.__shared_io_pool_size=0
dbgrid.__shared_pool_size=301989888
dbgrid.__streams_pool_size=4194304
*.audit_file_dest='D:\app\Administrator\admin\DBGRID\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='D:\oradata\DBGRID\control01.ctl','D:\oradata\DBGRID\control02.ctl'
*.db_block_size=8192
*.db_domain=''
Leave as it is for now --> *.db_name='GALAXY'
*.db_recovery_file_dest='D:\fra\backupsets\duplicate'
*.DB_RECOVERY_FILE_DEST_SIZE=4G
*.diagnostic_dest='D:\app\Administrator'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=DBGRIDXDB)'
*.job_queue_processes=1000
*.log_archive_dest_1='location=D:\fra\backupsets\archs'
*.log_buffer=10485760
*.memory_target=805306368
*.open_cursors=300
*.processes=800
*.remote_login_passwordfile='EXCLUSIVE'
*.session_cached_cursors=300
*.sessions=885
*.undo_tablespace='UNDOTBS1'
Make sure that all the directory values in this edited pfile are existing in the target server.
5. Copy all the RMAN backup pieces generated in the source database. Transfer the edited pfile as well. Make sure that all directories presented in the pfile exists in the target server.
In this example, RMAN backupsets are located at:
Backupsets:
Level0 and Level1 = D:\fra\backupsets\duplicate\level0 , D:\fra\backupsets\duplicate\level1
Controlfile and Spfile Autobackup = D:\fra\backupsets\duplicate\autobackup
Edited pfile initGALAXYrman= C:\TEMP\initDBGRIDnew.ora
FROM THE TARGET DATABASE (DBGRID)
6. Connect to RMAN and perform database duplication using RMAN backup restoration
C:\Users\Administrator>rman target /
Recovery Manager: Release 11.2.0.1.0 - Production on Wed Aug 1 07:26:45 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database (not started)
RMAN> set dbid = 3578870300; --> THIS IS THE DBID OF THE SOURCE DATABASE!
executing command: SET DBID
RMAN> startup nomount pfile='C:\TEMP\initDBGRIDnew.ora'; -->restore the edited pfile
Oracle instance started
Total System Global Area 535662592 bytes
Fixed Size 1375792 bytes
Variable Size 327156176 bytes
Database Buffers 192937984 bytes
Redo Buffers 14192640 bytes
RMAN> restore controlfile from 'D:\fra\backupsets\duplicate\autobackup\SAMSUNG-CTL_C-3578870300-20120801-00'; -->restore the correct controlfile
Starting restore at 01-AUG-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:07
output file name=D:\ORADATA\DBGRID\CONTROL01.CTL
output file name=D:\ORADATA\DBGRID\CONTROL02.CTL
Finished restore at 01-AUG-12
RMAN> alter database mount; -->mount the database
database mounted
released channel: ORA_DISK_1
RMAN> catalog start with "D:\fra\backupsets\duplicate";
--> catalog the location of the backup pieces to make it known to the control file
Starting implicit crosscheck backup at 01-AUG-12
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
Crosschecked 3 objects
Finished implicit crosscheck backup at 01-AUG-12
Starting implicit crosscheck copy at 01-AUG-12
using channel ORA_DISK_1
Finished implicit crosscheck copy at 01-AUG-12
searching for all files in the recovery area
cataloging files...
no files cataloged
searching for all files that match the pattern D:\fra\backupsets\duplicate
List of Files Unknown to the Database
=====================================
File Name: D:\FRA\BACKUPSETS\duplicate\autobackup\SAMSUNG-CTL_C-3578870300-20120801-00
File Name: D:\FRA\BACKUPSETS\duplicate\level0\LEVEL0-GALAXY-20120801-01NHGTGV_1_1
File Name: D:\FRA\BACKUPSETS\duplicate\level0\LEVEL0-GALAXY-20120801-02NHGTIA_1_1
File Name: D:\FRA\BACKUPSETS\duplicate\level0\LEVEL0-GALAXY-20120801-03NHGTMT_1_1
Do you really want to catalog the above files (enter YES or NO)? YES
cataloging files...
cataloging done
List of Cataloged Files
=======================
File Name: D:\FRA\BACKUPSETS\duplicate\autobackup\SAMSUNG-CTL_C-3578870300-20120801-00
File Name: D:\FRA\BACKUPSETS\duplicate\level0\LEVEL0-GALAXY-20120801-01NHGTGV_1_1
File Name: D:\FRA\BACKUPSETS\duplicate\level0\LEVEL0-GALAXY-20120801-02NHGTIA_1_1
File Name: D:\FRA\BACKUPSETS\duplicate\level0\LEVEL0-GALAXY-20120801-03NHGTMT_1_1
RMAN> list backup summary; -->check your backup they are now known
List of Backups
===============
Key TY LV S Device Type Completion Time #Pieces #Copies Compressed Tag
1 B A A DISK 01-AUG-12 1 2 NO TAG20120801T011054
2 B 0 A DISK 01-AUG-12 1 2 NO TAG20120801T011137
3 B A A DISK 01-AUG-12 1 2 NO TAG20120801T011405
RMAN> list archivelog all; -->list you archivelog for point in time recovery
List of Archived Log Copies for database with db_unique_name GALAXY
=====================================================================
Key Thrd Seq S Low Time
26 1 29 A 01-AUG-12
Name: D:\FRA\BACKUPSETS\ARCHS\ARC0000000029_0785167457.0001
Perform database restoration and recovery. The sequence number is Seq+1 for complete recovery, so that will be 29 + 1 = 30. You can also do recovery via SCN or time based recovery.
Remember in the previous step: RMAN> REPORT SCHEMA;
Each datafile has a corresponding datafile number.
Follow the format to convert them into their respective new restoration directory in the target server.
SET NEWNAME has the format:
SET NEWNAME FOR DATAFILE [FILE NUMBER IN THE REPORT SCHEMA COMMAND] TO
‘[NEW LOCATION AND FILENAME OF THE DATAFILES]’;
RMAN> run {
2> SET UNTIL SEQUENCE 30 THREAD 1;
3> set newname for datafile 1 to 'D:\oradbgrid\oradata\SYSTEM01.DBF';
4> set newname for datafile 2 to 'D:\oradbgrid\oradata\SYSAUX01.DBF';
5> set newname for datafile 3 to 'D:\oradbgrid\oradata\UNDOTBS01.DBF';
6> set newname for datafile 4 to 'D:\oradbgrid\oradata\USERS01.DBF';
7> set newname for datafile 5 to 'D:\oradbgrid\oradata\EXAMPLE01.DBF';
8> set newname for datafile 6 to 'D:\oradbgrid\oradata\ALLINDEX01.DBF';
9> restore database;
10> switch datafile all;
11> recover database;
12> }
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 01-AUG-12
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to D:\oradbgrid\oradata\SYSTEM01.DBF
channel ORA_DISK_1: restoring datafile 00002 to D:\oradbgrid\oradata\SYSAUX01.DBF
channel ORA_DISK_1: restoring datafile 00003 to D:\oradbgrid\oradata\UNDOTBS01.DBF
channel ORA_DISK_1: restoring datafile 00004 to D:\oradbgrid\oradata\USERS01.DBF
channel ORA_DISK_1: restoring datafile 00005 to D:\oradbgrid\oradata\EXAMPLE01.DBF
channel ORA_DISK_1: restoring datafile 00006 to D:\oradbgrid\oradata\ALLINDEX01.DBF
channel ORA_DISK_1: reading from backup piece D:\FRA\BACKUPSETS\DUPLICATE\LEVEL0\LEVEL0-GALAXY-20120801-02NHGTIA_1_1
channel ORA_DISK_1: piece handle=D:\FRA\BACKUPSETS\DUPLICATE\LEVEL0\LEVEL0-GALAXY-20120801-02NHGTIA_1_1 tag=TAG20120801T011137
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:02:06
Finished restore at 01-AUG-12
Starting recover at 01-AUG-12
using channel ORA_DISK_1
starting media recovery
archived log for thread 1 with sequence 29 is already on disk as file D:\FRA\BACKUPSETS\ARCHS\ARC0000000029_0785167457.0001
archived log file name=D:\FRA\BACKUPSETS\ARCHS\ARC0000000029_0785167457.0001 thread=1 sequence=29
media recovery complete, elapsed time: 00:00:01
Finished recover at 01-AUG-12
Log in to SQL*Plus to recreate the redolog files.
Format:
ALTER DATABASE RENAME FILE ‘[OLD REDOLOG LOCATION]’ TO ‘[NEW REDOLOG LOCATION]’;
C:\Users\Administrator>sqlplus "/ as sysdba"
SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 1 08:54:27 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
dbgrid MOUNTED
SQL> ALTER DATABASE RENAME FILE 'C:\ORACLE\ORADATA\GALAXY\REDO03A.LOG' TO 'C:\oracle\oradata\dbgrid\REDO03A.LOG';
Database altered.
SQL> ALTER DATABASE RENAME FILE 'C:\ORACLE\ORADATA\GALAXY\REDO03B.LOG' TO 'C:\oracle\oradata\dbgrid\REDO03B.LOG';
Database altered.
SQL> ALTER DATABASE RENAME FILE 'C:\ORACLE\ORADATA\GALAXY\REDO02A.LOG' TO 'C:\oracle\oradata\dbgrid\REDO02A.LOG';
Database altered.
SQL> ALTER DATABASE RENAME FILE 'C:\ORACLE\ORADATA\GALAXY\REDO02B.LOG' TO 'C:\oracle\oradata\dbgrid\REDO02B.LOG';
Database altered.
SQL> ALTER DATABASE RENAME FILE 'C:\ORACLE\ORADATA\GALAXY\REDO01A.LOG' TO 'C:\oracle\oradata\dbgrid\REDO01A.LOG';
Database altered.
SQL> ALTER DATABASE RENAME FILE 'C:\ORACLE\ORADATA\GALAXY\REDO01B.LOG' TO 'C:\oracle\oradata\dbgrid\REDO01B.LOG';
Database altered.
Open the database in resetlogs option. Create spfile from the edited pfile then bounce the database.
RMAN> alter database open resetlogs;
database opened
SQL> create spfile from pfile='C:\TEMP\initDBGRIDnew.ora';
File created.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 535662592 bytes
Fixed Size 1375792 bytes
Variable Size 327156176 bytes
Database Buffers 192937984 bytes
Redo Buffers 14192640 bytes
Database mounted.
Database opened.
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
dbgrid OPEN
Create a new TEMP tablespace, make this as the new default temporary tablespace. Drop the old TEMP tablespace. Restart the database.
SQL> CREATE TEMPORARY TABLESPACE TEMP01 TEMPFILE 'D:\oradbgrid\oradata\TEMP0101.dbf' SIZE 200M;
Tablespace created.
SQL> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP01;
Database altered.
SQL> drop tablespace TEMP including contents and datafiles;
Tablespace dropped.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance sta -
Restored standby database from primary; now no logs are shipped
Hi
We recently had a major network/SAN issue and had to restore our standby database from a backup of the primary. To do this, we restored the database to the standby, created a standby controlfile on the primary, copied this across to the control file locations and started in standby recover and applied the logs manually/registered to get it back up to speed.
However, no new logs are being shipped across from the primary.
Have we missed a step somewhere?
One thing we've noticed is that there is no RFS process running on the standby:
SQL> SELECT PROCESS, CLIENT_PROCESS, SEQUENCE#, STATUS FROM V$MANAGED_STANDBY;
PROCESS CLIENT_P SEQUENCE# STATUS
ARCH ARCH 0 CONNECTED
ARCH ARCH 0 CONNECTED
MRP0 N/A 100057 WAIT_FOR_LOG
How do we start this? Or will it only show if the arc1 process on the primary is sending files?
The arc1 process is showing at OS level on the primary but I'm wondering if its faulty somehow?
There are NO errors in the alert logs in the primary or the standby. There's not even the normal FAL gap sequence type error - in the standby it's just saying 'waiting for log' and a number from ages ago. It's like the primary isn't even talking to the standby. The listener is up and running ok though...
What else can we check/do?
If we manually copy across files and do an 'alter database register' then they are applied to the standby without issue; there's just no automatic log shipping going on...
Thanks
RossHi all
Many thanks for all the responses.
The database is 10.2.0.2.0, on AIX 6.
I believe the password files are ok; we've had issues previously and this is always flagged in the alert log on the primary - not the case here.
Not set to DEFER on primary; log_archive_dest_2 is set to service="STBY_PHP" optional delay=720 reopen=30 and log_archive_dest_state_2 is set to ENABLE.
I ran those troubleshooting scripts, info from standby:
SQL> @troubleshoot
NAME DISPLAY_VALUE
db_file_name_convert
db_name PHP
db_unique_name PHP
dg_broker_config_file1 /oracle/PHP/102_64/dbs/dr1PHP.dat
dg_broker_config_file2 /oracle/PHP/102_64/dbs/dr2PHP.dat
dg_broker_start FALSE
fal_client STBY_PHP
fal_server PHP
local_listener
log_archive_config
log_archive_dest_2 service=STBY_PHP optional delay=30 reopen=30
log_archive_dest_state_2 DEFER
log_archive_max_processes 2
log_file_name_convert
remote_login_passwordfile EXCLUSIVE
standby_archive_dest /oracle/PHP/oraarch/PHParch
standby_file_management AUTO
NAME DB_UNIQUE_NAME PROTECTION_MODE DATABASE_R OPEN_MODE
PHP PHP MAXIMUM PERFORM PHYSICAL S MOUNTED
ANCE TANDBY
THREAD# MAX(SEQUENCE#)
1 100149
PROCESS STATUS THREAD# SEQUENCE#
ARCH CONNECTED 0 0
ARCH CONNECTED 0 0
MRP0 WAIT_FOR_LOG 1 100150
NAME VALUE UNIT TIME_COMPUTED
apply finish time day(2) to second(1) interval
apply lag day(2) to second(0) interval
estimated startup time 8 second
standby has been open N
transport lag day(2) to second(0) interval
NAME Size MB Used MB
0 0
On the primary, the script has froze!! How long should it take? Got as far as this:
SQL> @troubleshoot
NAME DISPLAY_VALUE
db_file_name_convert
db_name PHP
db_unique_name PHP
dg_broker_config_file1 /oracle/PHP/102_64/dbs/dr1PHP.dat
dg_broker_config_file2 /oracle/PHP/102_64/dbs/dr2PHP.dat
dg_broker_start FALSE
fal_client STBY_R1P
fal_server R1P
local_listener
log_archive_config
log_archive_dest_2 service="STBY_PHP" optional delay=720 reopen=30
log_archive_dest_state_2 ENABLE
log_archive_max_processes 2
log_file_name_convert
remote_login_passwordfile EXCLUSIVE
standby_archive_dest /oracle/PHP/oraarch/PHParch
standby_file_management AUTO
NAME DB_UNIQUE_NAME PROTECTION_MODE DATABASE_R OPEN_MODE SWITCHOVER_STATUS
PHP PHP MAXIMUM PERFORMANCE PRIMARY READ WRITE SESSIONS ACTIVE
THREAD# MAX(SEQUENCE#)
1 100206
NOW - before you say it - :) - yes, I'm aware that fal_client as STBY_R1P and fal_server as R1P are incorrect - should be PHP - but it looks like it's always been this way! Well, as least for the last 4 years where it's worked fine, as I found an old SP file and it still has R1P set in there...?!?
Any ideas?
Ross -
Datafile issues in manual standby database
Hi all,
oracle - 10gR2
OS - RHEL 2.6
We have primary and standby database setup using manual methods('rsync') to send archive logs from primary to standby database and they are applied there. Today I have created a new datafile in primary and seen that the same is not replicated in standby( i was not aware of the functionality of this kind of setup) later I have seen that "standby_file_management parameter is set to MANUAL".
I have seen the following message in standby alert log(not disabled the archive log application script in satndby),
"Media Recovery Log /u01/app/oracle/oradata/bmprod/archivelog/1_1761_703415336.arc
File #6 added to control file as 'UNNAMED00006' because
the parameter STANDBY_FILE_MANAGEMENT is set to MANUAL
The file should be manually created to continue.
Some recovered datafiles maybe left media fuzzy
Media recovery may continue but open resetlogs may fail"
Later I have copied the required file from primary to standby database(now I have disabled the archive log application script in standby), and renamed the datafile 'UNNAMED00006' to 'desired one' and restarted the archive log application script. I have seen the following messages,
"ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 6 needs more recovery to be consistent
ORA-01110: data file 6: '/u02/app/oracle/oradata/bmprod/BMTEST.dbf'"
Now I am unable to figure out what I should do to come out of this situation. Atleast tell me this condition is not worse than I thought(I think that the standby database should be recreated).
Any help is appreciated.......
regards
Edited by: techfeud on Jan 18, 2010 11:26 PMHi,
when you set the standby_file_management parameter as mannual then , if you create any datafile or adding it to the tablespace then you should mannaully run the command on the standby side , if its auto then auto matically it will create the file over in the respective locationa and with the name what you have used to create the datafile on the primary side,
as the parameter value is mannual ypu need to create the datafile over the standby side and then performt the recovery,
Farhan. -
Add Datafile in Logical Standby Database
Hi,
I have add one datafile in our primary RAC DB. We had logical standby database with file management is equal to manual. Both the primary RAC and logical standby db have the different storage structure. When the archive applied on the logical standby database its throws the error " error in creating datafile 'path'";
Would appreciate if come to know the steps to add the datafile in this kind of environment. and how can i overcome from this problem now except skip transaction for that ddl.
Thanks in advance.
DewanWhen the archive applied on the logical standby database its throws the error " error in creating datafile 'path'";Can you post the error message with the number.
From Manual..
8.3.1.2 Adding a Tablespace and a Datafile When STANDBY_FILE_MANAGEMENT Is Set to MANUAL
The following example shows the steps required to add a new datafile to the primary and standby database when the STANDBY_FILE_MANAGEMENT initialization parameter is set to MANUAL. You must set the STANDBY_FILE_MANAGEMENT initialization parameter to MANUAL when the standby datafiles reside on raw devices.
Add a new tablespace to the primary database:
SQL> CREATE TABLESPACE new_ts DATAFILE '/disk1/oracle/oradata/payroll/t_db2.dbf'
2> SIZE 1m AUTOEXTEND ON MAXSIZE UNLIMITED;
Verify the new datafile was added to the primary database:
SQL> SELECT NAME FROM V$DATAFILE;
NAME
/disk1/oracle/oradata/payroll/t_db1.dbf
/disk1/oracle/oradata/payroll/t_db2.dbf
Perform the following steps to copy the tablespace to a remote standby location:
Place the new tablespace offline:
SQL> ALTER TABLESPACE new_ts OFFLINE;
Copy the new tablespace to a local temporary location using an operating system utility copy command. Copying the files to a temporary location will reduce the amount of time the tablespace must remain offline. The following example copies the tablespace using the UNIX cp command:
% cp /disk1/oracle/oradata/payroll/t_db2.dbf
/disk1/oracle/oradata/payroll/s2t_db2.dbf
Place the new tablespace back online:
SQL> ALTER TABLESPACE new_ts ONLINE;
Copy the local copy of the tablespace to a remote standby location using an operating system utility command. The following example uses the UNIX rcp command:
%rcp /disk1/oracle/oradata/payroll/s2t_db2.dbf standby_location
Archive the current online redo log file on the primary database so it will get transmitted to the standby database:
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
Use the following query to make sure that Redo Apply is running. If the MRP or MRP0 process is returned, Redo Apply is being performed.
SQL> SELECT PROCESS, STATUS FROM V$MANAGED_STANDBY;
Verify the datafile was added to the standby database after the archived redo log file was applied to the standby database:
SQL> SELECT NAME FROM V$DATAFILE;
NAME
/disk1/oracle/oradata/payroll/s2t_db1.dbf
/disk1/oracle/oradata/payroll/s2t_db2.dbf
Maybe you are looking for
-
DUAL MONITOR BUG: One Picture – One Monitor – Different Colors!
There have been several threads discussing that Photoshop CS4 and OS 10.6. show wrong colors in dual monitor setups. The first one to prove this with a screen capture was jb510-LJ0JJQ in August 2009: http://forums.adobe.com/message/2207312#2207312 Ei
-
Override default printer when printing ALV
Hi, I have built an ALV OO report. When I click 'Print', the popup with the print parameters is defaulted according to my default user profile. I'd like to change the default printer. I tried to use the parameter 'IS_PRINT' of the method 'SET_TABLE
-
Hi, I need to create a simple VC App that will allow me to maintain a cross reference table for materials. I'll need add, del, chg Example: KIT001 MAT00A (Material Kit KIT001 has Basic Material MAT00A KIT009 MAT00E (Material
-
Hello, This is the java script I use to create a news ticker on one of my pages. It can be included anywhere in your application - region header, body or footer: <script language="JavaScript1.2"> Cross browser Marquee script- © Dynamic Drive (www.dy
-
I am having trouble downloading a firefox version for windows 7 64 bit.
I cannot seem to find a version of Firefox that will run properly with my new laptop. I have a Dell Inspiron running Windows 7 Home Premium 64 bit, an Intel core i5 2410M @ 2.30 GHz, and the AMD Radeon HD 6470M graphics card. The Mozilla site seems t