Redirecting an Oracle Restore Using SET NEWNAME

Estamos en proceso de migracion de bases de datos a nuevas versiones, y como parte del proceso, en los clientes donde no tienen licencia para OGG, procedemos con la opcion de generar un Dataguars y luego realizar el UPGRADE.

Como las versiones de las cuales migramos hacia 12.2 son 11gR2, o 12c1, de bases que no estaban bajo la tecnologia de ASM, y si en filesystem procedemos a utilizar las opciones en el restore el set de comandos:

  • SET NEWNAME FOR DATABASE
  • SET NEWNAME FOR TABLESPACE

Con estos comandos es importante espcificar las varibles de paths de discos, para evitar problemas y que las piezas se restoreen donde es indicado:

Problema

En este caso en particular, el inconveniente que nos encontramos fue:

El TABLESPACE SYSTEM, contenia datafiles con el mismo nombre en el path /data01/datafiles y el path /data02/datafiles , provenientes del SOURCE y no teniendo habilitada la caracteristica OMF:

channel ORA_DISK_16: restoring datafile 00073 to +DATA_EXA2A/undotbs1.002.dbf
channel ORA_DISK_16: restoring datafile 00086 to +DATA_EXA2A/a_txn_data23.dbf
channel ORA_DISK_16: reading from backup piece /backup/EBSPROD/full_backup_diario_dbf_PROD_20180118_t965701613_p1_s92352.bkp
channel ORA_DISK_12: ORA-19870: error while restoring backup piece /backup/EBSPROD/full_backup_diario_dbf_PROD_20180118_t965698895_p1_s92347.bkp
ORA-19504: failed to create file "+DATA_EXA2A/system12.dbf"
ORA-17502: ksfdcre:4 Failed to create file +DATA_EXA2A/system12.dbf
ORA-15005: name "system12.dbf" is already used by an existing alias

Procedimiento

Para evitar colicionamiento de nombres, hay que especificas al menos una de las varibles, donde sustituiremos el nombre de los datafiles repetidos provenientes de diferentes filesystems. Leer más “Redirecting an Oracle Restore Using SET NEWNAME”

Anuncios

Oracle Redirected Restore File Name Variables

En la siguiente tabla podemos encontrar el listado de las variables que podemos especificar al momento de redireccionar nuestras piezas (Pieces from a backupset pieces on restore.)

Estas nos ayudaran a trabajar en el redireccionamiento de almacenamiento en nuestros nuevos TARGETS:

Variable Description
%U Note: This variable covers most cases.This variable specifies a system-generated unique file name with the following format:

data-D-%d_id-%I_TS-%N_FNO-%f.

The %d variable specifies the database name. For example, data-D-prod_id-22398754_TS-users_FNO-7.

%b This variable specifies the file name without the fully qualified directory path. For example, the data file name /oradata/prod/financial.dbf becomes financial.dbf.This variable preserves the names of the data files while you move them to different directory. You can use this variable when you create an image copies. The variable cannot be used for OMF data files or backup sets.
%f Specifies the absolute file number of the data file for which the new name is generated. For example, if data file 2 is duplicated, then %f generates the value 2.
%I This variable is optional and specifies the database ID (DBID).
%N This variable is optional and specifies the tablespace name.