In this example, I want to redirect the files to a slightly different path during a clone from prod to test.
In prod, files are to be found under:
* /u02/oradata/proddb01/datafile
In test, I want to be placed under:
* /u02/oradata/testdb01
Furthermore, some tempfiles are placed differently than regular datafiles in prod. In test I do not need or want multiple destinations; all files should be placed under /u02/oradata/testdb01. Therefore, my db_file_name_convert parameter must have multiple pairs of source and target locations.
For the log files, they could all be placed under similar locations, so the redirection string can simply contain the only thing that will differ: the ORACLE_SID.
When using a pfile:
db_file_name_convert=('/u02/oradata/proddb01/datafile','/u02/oradata/testdb01',
'/u02/oradata/proddb01/tempfile',/u02/oradata/testdb01')
log_file_name_convert=('proddb01','testdb01')
When using an spfile:
alter system set db_file_name_convert='/u02/oradata/proddb01/datafile','/u02/oradata/testdb01',
'/u02/oradata/proddb01/tempfile',/u02/oradata/testdb01' scope=spfile;
alter system set log_file_name_convert='proddb01','testdb01' scope=spfile;
It is also supported to use the log_file_name_convert multiple times in the parameter file, like this:
log_file_name_convert=('/u01/app/oracle/oradata/proddb01/onlinelog/','/u04/oradata/testdb01/onlinelog/')
log_file_name_convert=('/u01/app/oracle/flash_recovery_area/proddb01/onlinelog/','/u04/oradata/testdb01/onlinelog/')
Oracle Docs:
db_file_name_convert
log_file_name_convert