Oracle 19c dg reported an error in the process of building duplicate
During the construction of oracle 19c, the duplicate error message is executed as follows: RMAN > duplicate target database for standby from active database nofilenamecheck Input datafile file number=00001 name=/data/u01/app/oracle/oradata/BHDB/system01.dbf RMAN-03009: failure of backup command on ORA_DISK_1 channel at 06 Universe 26 16:12:35 ORA-17628: Oracle error 19505 returned by remote Oracle server ORA-19505: failed to identify file "" channel ORA_DISK_1 disabled Job failed on it will be run on another channel RMAN-00571: = = RMAN-00569: = ERROR MESSAGE STACK FOLLOWS = RMAN-00571: = = RMAN-03002: failure of Duplicate Db command at 06 returned by remote Oracle server ORA-19505 26 16:12:35 RMAN-05501: aborting duplication of target database RMAN-03015: error occurred in stored script Memory Script RMAN-03009: failure of backup command on ORA_DISK_1 channel at 06 returned by remote Oracle server ORA-19505 26 16:12:35 ORA-17628: Oracle error 19505 returned by remote Oracle server ORA-19505: failed to identify file "ask Reason: this problem is usually encountered. It is a problem with the conversion path set by the parameters db_file_name_convert and log_file_name_convert. You can check whether the relevant directory of the slave library exists and whether you have permission! Environment introduction: the data file of the main library is as follows It mainly involves three directories: / data/u01/app/oracle/oradata/BHDB/system01.dbf / data/u01/app/oracle/oradata/BHDB/pdbseed/system01.dbf / data/u01/app/oracle/oradata/BHDB/bhdb_pdb/sysaux01.dbf, so you want to set the conversion parameters of the slave file as follows: (find the idea to convert all three directories involved into the corresponding dg library directory) db_file_name_convert ='/ data/u01 / app/oracle/oradata/BHDB/pdbseed/' After'/ data/u01/app/oracle/oradata/BHDG/pdbseed/','/ data/u01/app/oracle/oradata/BHDB/bhdb_pdb/','/ data/u01/app/oracle/oradata/BHDB/bhdg_pdb/','/data/u01/app/oracle/oradata/BHDB/','/data/u01/app/oracle/oradata/BHDG/' is set as above Duplicate has been reporting errors, I checked the directory and permissions are not a problem, but there is a problem, so check the DG library alarm log, as follows: cannot find the directory! Errors in file / data/u01/app/oracle/diag/rdbms/bhdg/bhdg/trace/bhdg_mz00_119260.trc: ORA-01110: data file 14:'/ data/u01/app/oracle/oradata/BHDG/bhdb_pdb/kcas_bh02.dbf' ORA-01565: error in identifying file'/ data/u01/app/oracle/oradata/BHDG/bhdb_pdb/kcas_bh02.dbf' ORA-27037: unable to obtain file status Linux-x86_64 Error: 2: No such file or directory is strange I have clearly set up to convert'/ data/u01/app/oracle/oradata/BHDB/bhdb_pdb/', to'/ data/u01/app/oracle/oradata/BHDG/bhdg_pdb/',. Why not create a file in'/ data/u01/app/oracle/oradata/BHDG/bhdg_pdb/'? How to report wrong, how to go to'/ data/u01/app/oracle/oradata/BHDG/bhdb_pdb/' to create a file? So I created the'/ data/u01/app/oracle/oradata/BHDG/bhdb_pdb/' directory on the dg library server, and then executed it again, and sure enough, there was no error! Can only be set to, as follows: [oracle@ovy-01 admin] $mkdir-p / data/u01/app/oracle/oradata/BHDG/bhdb_pdb/ the original dg parameter cannot cascade convert directories, can only convert superior directories, or can only convert subordinate directories, that is, you can only convert'/ data/u01/app/oracle/oradata/BHDB/' to'/ data/u01/app/oracle/oradata/BHDG/', and then subdirectories default That is to say, the / data/u01/app/oracle/oradata/BHDB/bhdb_pdb/ to dg library is converted to / data/u01/app/oracle/oradata/BHDG/bhdb_pdb/, or you can also convert / data/u01/app/oracle/oradata/BHDB/bhdb_pdb/-> / data/u01/app/oracle/oradata/BHDG/bhdg_pdb/ but the previous directory cannot be converted, whether you set it or not! So in my case, you only need to set the front-level directory, and then all the later ones default! Because other child directories don't work either! Details are as follows: SQL > alter system set db_file_name_convert ='/ data/u01/app/oracle/oradata/BHDB/','/ data/u01/app/oracle/oradata/BHDG/' scope=spfile
About setting db_file_name_convert parameter setting rules, otherwise it will report an error of 1. You cannot convert multiple directories of the main library to the same directory of the dg library db_file_name_convert ='/ data/u01/app/oracle/oradata/BHDB/','/ data/u01/app/oracle/oradata/BHDG/','/ data/u01/app/oracle/oradata/BHDB2/','/data/u01/app/oracle/oradata/BHDG/'
two。 Can not cascade conversion directory, as introduced in this article, may also be that I do not know how to achieve cascading settings, if there is a big god knows, can correct!
3. The directory must end with'/', that is, db_file_name_convert ='/ data/u01/app/oracle/oradata/BHDB/', rather than db_file_name_convert ='/ data/u01/app/oracle/oradata/BHDB'.