data guard RFS 无法创建日志文件

2025-09-29 04:22:48

1、查看standby alert日志

No standby redo logfiles created

注意:RFS 进程是将primary传输过来的归档生成redo files

data guard RFS 无法创建日志文件

2、定位相关问题参数

LOG_FILE_NAME_CONVERT 配置方法:

LOG_FILE_NAME_CONVERT ='location_of_primary_database_redo_logs','location_of_standby_database_redo_logs'

LOG_FILE_NAME_CONVERT 配置端:

Logical Standby      

Physical Standby      MRP

Snapshot Standby

LOG_FILE_NAME_CONVERT 作用:

Required when the standby database is on the same system as the primary database or when the directory structure where the log files are located on the standby site is different from the primary site. This parameter converts the path names of the primary database online redo log file to path names on the standby database. See Section 3.2.3 for an example.

data guard 默认采用Physical Standby

3、查看primary 相关参数配置是否正确

SQL> show parameter convert

NAME                                        TYPE        VALUE

------------------------------------ ----------- ------------------------------

db_file_name_convert                   string      +DATADG/test/datafile/, /u01/a

                                                         pp/oradata/test/data/, +DATADG

                                                         /test/tempfile/, /u01/app/orad

                                                         ata/test/data/

log_file_name_convert                  string      +DATADG/test/onlinelog/, /u01/

                                                         app/oradata/test/data/

从这里可以看出primary log_file_name_convert   参数配置 错误,

log_file_name_convert 参数只有standby才能配置,如果目前primary端配置,那么表面这是要做switchover,switchover之后的配置。

log_file_name_convert ='目前standby log目录','目前primary log 目录'                 

               

data guard RFS 无法创建日志文件

4、查看standby 相关参数配置是否正确

SQL> show parameter convert

NAME                                        TYPE        VALUE

------------------------------------ ----------- ------------------------------

db_file_name_convert                   string      /u01/app/oradata/test/data/, +

                                                         DATADG/test/datafile/, /u01/ap

                                                         p/oradata/test/data/, +DATADG/

                                                         test/tempfile/

log_file_name_convert                  string      /u01/app/oradata/test/data/, +

                                                         DATADG/test/onlinelog/

正确配置:log_file_name_convert ='目前primary log 目录' ,'目前standby log目录'

data guard RFS 无法创建日志文件

5、查看primary 相关参数应该设置的正确值

SQL> select name from v$datafile;

NAME

--------------------------------------------------------------------------------

+DATADG/test/datafile/system.259.861680043

+DATADG/test/datafile/sysaux.260.861680063

+DATADG/test/datafile/undotbs1.261.861680079

+DATADG/test/datafile/undotbs2.263.861680105

+DATADG/test/datafile/users.264.861680115

+DATADG/test/datafile/zxx1.dbf

+DATADG/test/datafile/zxx2.dbf

+DATADG/test/datafile/zxx3.dbf

+DATADG/test/datafile/zxx4.dbf

+DATADG/test/datafile/zxx5.dbf

10 rows selected.

SQL> select name from v$tempfile;

NAME

--------------------------------------------------------------------------------

+DATADG/test/tempfile/temp.262.861680087

SQL> select member from v$logfile;

data guard RFS 无法创建日志文件

6、查看standby 相关参数应该设置的正确值

data guard RFS 无法创建日志文件

7、正确设置相关参数

从上面可以看出:

1:primary和standby 中log_file_name_convert 值配置顺序错误

2:primary和standby 中log_file_name_convert 值配置错误

primary:

SQL> alter system set log_file_name_convert='/u01/app/oradata/test/data/TEST_STANDBY/onlinelog/','+DATADG/test/onlinelog/' scope=spfile sid='*';

standby:

SQL> alter system set log_file_name_convert='+DATADG/test/onlinelog/','/u01/app/oradata/test/data/TEST_STANDBY/onlinelog/' scope=spfile ;

data guard RFS 无法创建日志文件

8、重启 primary和standby,验证data guard是否正常工作 

关闭数据库:先primary 再standby

启动数据库:先standby 再primary

这个过程中关注 监听,重启正常后,primary切换归档测试

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢