怎么管理网站数据库,酒店网站建设系统介绍,唐山网站排名推广,哪个网站可以接图纸做最近遇到了复制数据#xff08;DUPLICATE TARGET DATABASE TO xxx#xff09;的时候 Oracle 源和目标库目录不一致的问题#xff0c;比较初级但也踩到一些坑#xff0c;整理记录一下。主从库搭建的时候注意事项其实也类似#xff0c;而且更通用#xff0c;所以标题写的是… 最近遇到了复制数据DUPLICATE TARGET DATABASE TO xxx的时候 Oracle 源和目标库目录不一致的问题比较初级但也踩到一些坑整理记录一下。主从库搭建的时候注意事项其实也类似而且更通用所以标题写的是主从库目录。 一、 参数含义
db_create_file_dest设置后开启OMF创建数据文件、redo文件时不需手动指定路径db_file_name_convert主、从库数据文件目录转换对应如果有多个需要逐一指明。建议直接指定到数据文件上一层目录否则其中子目录必须在从库中存在参考后面案例。log_file_name_convert主、从库redo文件目录转换对应如果有多个需要逐一指明。注意事项同上。
优先级
db_create_file_dest db_file_name_convert 与 log_file_name_convert 不设置 二、 设置效果
为方便理解从库以下面参数配置为例 db_create_file_dest/u01/erpuat/db/apps_st/data/ db_file_name_convert/u01/erpdev/db/apps_st/data/erpdev/datafile/,/u01/erpuat/db/apps_st/data/erpuat/datafile/,/u01/erpdev/db/apps_st_02/data/erpdev/datafile/,/u01/erpuat/db/apps_st_02/data/erpuat/datafile/ log_file_name_convert /oracle/fra/erpdev/onlinelog,/oracle/fra/erpuat/onlinelog,/u01/erpdev/db/apps_st/data/erpdev/onlinelog,/u01/erpuat/db/apps_st/data/erpuat/onlinelog 1. 设置db_create_file_dest 无论是否设置convert参数数据文件、redo文件均放在db_create_file_dest目录下会自动创建子目录。如果主库数据文件分在多个目录从库会合并放在该目录但要特别注意空间问题。 数据文件、redo文件/u01/erpuat/db/apps_st/data/ 2. 仅设置db_file_name_convert
数据文件按指定路径替换redo文件按照主库目录。如果有不存在的会遇到报错。 数据文件/u01/erpuat/db/apps_st/data/erpuat/datafile/ 与 /u01/erpuat/db/apps_st_02/data/erpuat/datafile/ redo文件/oracle/fra/erpdev/onlinelog 与 /u01/erpdev/db/apps_st/data/erpdev/onlinelog 目录不存在报错如下
注意它没有直接报目录不存在但写出了报错的数据文件路径可以自己在从库检查。 input datafile file number00003 name/u01/erpdev/db/apps_st/data/erpdev/datafile/o1_mf_test_da_os0rabc9_.dbf RMAN-03009: failure of backup command on c8 channel at 08/18/2023 15:20:40 ORA-17628: Oracle error 19505 returned by remote Oracle server continuing other job steps, job failed will not be re-run 3. 仅设置log_file_name_convert
redo文件按指定路径替换数据文件按照主库目录。如果有不存在的会遇到报错。 数据文件/u01/erpdev/db/apps_st/data/erpdev/datafile/ 与 /u01/erpdev/db/apps_st_02/data/erpdev/datafile/ redo文件/oracle/fra/erpuat/onlinelog 与 /u01/erpuat/db/apps_st/data/erpuat/onlinelog 目录不存在报错如下
这个倒是直接报目录不存在但它是在所有数据文件复制完成后重建控制文件时报的。如果数据量很大会经过漫长等待之后卡在这步报错然后要重来尴尬... RMAN-06136: ORACLE error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed ORA-00349: failure obtaining block size for /oracle/fra/erpdev/onlinelog/o1_mf_1_k5abdh25_.log ORA-27041: unable to open file Linux-x86_64 Error: 2: No such file or directory Additional information: 9 4. db_file_name_convert和log_file_name_convert都设置
数据文件、redo文件都按指定路径替换。如果有不存在的会遇到报错。 数据文件/u01/erpuat/db/apps_st/data/erpuat/datafile/ 与 /u01/erpuat/db/apps_st_02/data/erpuat/datafile/ redo文件/oracle/fra/erpuat/onlinelog 与 /u01/erpuat/db/apps_st/data/erpuat/onlinelog 5. db_file_name_convert和log_file_name_convert都不设置
数据文件、redo文件都按照主库目录。如果有不存在的会遇到报错。 数据文件/u01/erpdev/db/apps_st/data/erpdev/datafile/ 与 /u01/erpdev/db/apps_st_02/data/erpdev/datafile/ redo文件/oracle/fra/erpdev/onlinelog 与 /u01/erpdev/db/apps_st/data/erpdev/onlinelog 6. 特别注意未设子目录的效果
两个convert参数效果都是一样的这里以 db_file_name_convert 为例。
假如目录结构是这样的
主库/u01/erpdev/db/apps_st/data/erpdev/datafile/从库/u01/erpuat/db/apps_st/data/erpuat/datafile/
但我是这么设置的只写到了data目录那级 db_file_name_convert/u01/erpdev/db/apps_st/data/,/u01/erpuat/db/apps_st/data/ 同步的时候会不会报错 答案是会的因为转换后从库找的是 /u01/erpuat/db/apps_st/data/erpdev/datafile/由于子目录没有设置转换它还是会按照原来的erpdev。而从库实际是没有这个目录的因此会遇到报错。 参考
DATAGUARD中db_file_name_convert和db_create_file_dest_51CTO博客_dataguard_status
https://www.cnblogs.com/xqzt/p/5089826.html
Multiple Standby Databases Dataguard Oracle - EasyOraDBA
RMAN Duplicate failing with RMAN-06136, ORA-01503, ORA-00349 (Doc ID 2206423.1)