ORACLE10G DG配置中两个参数db_file_name_convert和log_file_name_convert
2014-06-27 22:13
459 查看
ORACLE10G DG配置中,两个参数db_file_name_convert和log_file_name_convert是用来转化数据,在线和standby日志文件的位置。主要用在物理standby数据库和rman数据库复制和TSPITR的操作。如果在配置DG时没有设置,在后期执行操作备库执行ALTER
DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
tail -f /u01/app/admin/orcl/bdump/alert_orcl.log 日志文件中报如下错误信息:
Errors in file /u01/app/admin/orcl/bdump/orcl_mrp0_2739.trc:
ORA-19527: physical standby redo log must be renamed
ORA-00312: online log 1 thread 1: '/u01/app/oradata/myorcl/redo01.log'
错误分析:
出现这个错误是因为ORACLE为了降低不小心主库联机日志的风险而引起的;ORACLE不知道你的主备库是在一台机器上还是多台机器上,如果是在相同机器上,则有可能不小心把主库的连机清空了。
如果是先在主库switch logfile后,再alter database recover managed standby database disconnect from session;还会有如下报错:
Errors in file /u01/app/admin/orcl/bdump/orcl_mrp0_2739.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u01/app/oradata/myorcl/redo01.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
错误分析:
出现这个错误主要是因为在备份前主库创建了standby redo log,备库是根据主库的信息创建的,一开始它是包含了主库的standby redo log信息,如果主库设置的日志传送方式是LGWR,当主库发生日志切换时,备库的RFS会尝试使用standby redo log来存储主库传送过来的日志,因为此时备库实际上是不存在standby redo log的,所以备库会报错。当备库尝试打开字典信息的所有standby redo log失败以后,备库会自动把日志传送方式转为ARCN,并同时清除数据字典中的standby
redo log信息。
在最初创建备库时并没有redologs ,要指定参数 log_file_name_convert 后,重新alter database recover managed standby database disconnect from session; 后就进程会自动创建redo文件。
以上两个问题可是看作是一个问题,解决方式是在备库设置 log_file_name_convert 即可,如下操作:
SQL> show parameter db_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string orcl, myorcl
SQL> alter system set db_file_name_convert='/u01/app/oracle/oradata/myorcl/','/u01/app/oracle/oradata/myorcl/' scope=spfile;
System altered.
SQL> show parameter log_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_file_name_convert string
SQL> alter system set log_file_name_convert='/u01/app/oradata/myorcl','/u01/app/oradata/orcl' scope=spfile;
System altered.
重启数据库生效,如下:
SQL> shutdown immediate
SQL> startup
SQL> show parameter db_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string /u01/app/oracle/oradata/myorcl/, / u01/app/oracle/oradata/myorcl/
SQL> show parameter log_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_file_name_convert string /u01/app/oradata/myorcl, /u01/ app/oradata/orcl
主备库都要设置,完成之后,在备库执行 RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
SQL> RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Media recovery complete.
日志信息如下: --高精日志提示可知无错误提示;著名笔者刊www.zmbzk.com
DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
tail -f /u01/app/admin/orcl/bdump/alert_orcl.log 日志文件中报如下错误信息:
Errors in file /u01/app/admin/orcl/bdump/orcl_mrp0_2849.trc: ORA-00313: open failed for members of log group 1 of thread 1 ORA-00312: online log 1 thread 1: '/u01/app/oradata/orcl/redo01.log' ORA-27037: unable to obtain file status ...... Errors in file /u01/app/admin/orcl/bdump/orcl_mrp0_2739.trc: ORA-19527: physical standby redo log must be renamed ORA-00312: online log 1 thread 1: '/u01/app/oradata/myorcl/redo01.log' |
ORA-19527: physical standby redo log must be renamed
ORA-00312: online log 1 thread 1: '/u01/app/oradata/myorcl/redo01.log'
错误分析:
出现这个错误是因为ORACLE为了降低不小心主库联机日志的风险而引起的;ORACLE不知道你的主备库是在一台机器上还是多台机器上,如果是在相同机器上,则有可能不小心把主库的连机清空了。
如果是先在主库switch logfile后,再alter database recover managed standby database disconnect from session;还会有如下报错:
Errors in file /u01/app/admin/orcl/bdump/orcl_mrp0_2739.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u01/app/oradata/myorcl/redo01.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
错误分析:
出现这个错误主要是因为在备份前主库创建了standby redo log,备库是根据主库的信息创建的,一开始它是包含了主库的standby redo log信息,如果主库设置的日志传送方式是LGWR,当主库发生日志切换时,备库的RFS会尝试使用standby redo log来存储主库传送过来的日志,因为此时备库实际上是不存在standby redo log的,所以备库会报错。当备库尝试打开字典信息的所有standby redo log失败以后,备库会自动把日志传送方式转为ARCN,并同时清除数据字典中的standby
redo log信息。
在最初创建备库时并没有redologs ,要指定参数 log_file_name_convert 后,重新alter database recover managed standby database disconnect from session; 后就进程会自动创建redo文件。
以上两个问题可是看作是一个问题,解决方式是在备库设置 log_file_name_convert 即可,如下操作:
SQL> show parameter db_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string orcl, myorcl
SQL> alter system set db_file_name_convert='/u01/app/oracle/oradata/myorcl/','/u01/app/oracle/oradata/myorcl/' scope=spfile;
System altered.
SQL> show parameter log_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_file_name_convert string
SQL> alter system set log_file_name_convert='/u01/app/oradata/myorcl','/u01/app/oradata/orcl' scope=spfile;
System altered.
重启数据库生效,如下:
SQL> shutdown immediate
SQL> startup
SQL> show parameter db_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string /u01/app/oracle/oradata/myorcl/, / u01/app/oracle/oradata/myorcl/
SQL> show parameter log_file_name_convert;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_file_name_convert string /u01/app/oradata/myorcl, /u01/ app/oradata/orcl
主备库都要设置,完成之后,在备库执行 RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
SQL> RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Media recovery complete.
日志信息如下: --高精日志提示可知无错误提示;著名笔者刊www.zmbzk.com
Thu Mar 27 00:16:19 2014 ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION Thu Mar 27 00:16:19 2014 Attempt to start background Managed Standby Recovery process (orcl) MRP0 started with pid=18, OS id=2954 Thu Mar 27 00:16:19 2014 MRP0: Background Managed Standby Recovery process started (orcl) Managed Standby Recovery not using Real Time Apply Media Recovery Waiting for thread 1 sequence 11 Thu Mar 27 00:16:25 2014 Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION Thu Mar 27 00:18:17 2014 Using STANDBY_ARCHIVE_DEST parameter default value as /u01/app/my_arch/ Redo Shipping Client Connected as PUBLIC -- Connected User is Valid RFS[1]: Assigned to RFS process 2956 RFS[1]: Identified database type as 'physical standby' Thu Mar 27 00:18:17 2014 RFS LogMiner: Client disabled from further notification |
相关文章推荐
- DATAGUARD 中 log_file_name_convert与db_file_name_convert 参数设置
- DataGuard---->备库参数db_file_name_convert和log_file_name_convert的作用
- DataGuard---->备库参数db_file_name_convert和log_file_name_convert的作用
- 由dg中的db_file_name_convert参数不生效想到的db_file_create
- dg备库数据文件路径与db_file_name_convert设置不一致
- windows到linux的duplicate的DataGuard的db_file_name_convert参数不生效案例
- 关于参数log_file_name_convert
- 关于参数log_file_name_convert
- DB_FILE_NAME_CONVERT参数导致ORA-15124: ASM file name '...' containsan invalid alias name
- db_file_name_convert参数的困惑
- 配置DATAGUARD 时关于 LOG_FILE_NAME_CONVERT配置错误的解决
- db_file_name_convert参数
- ADG故障解决案例:db_file_name_convert参数设置错误
- log_file_name_convert配置错误引起的问题
- ORA-01678: parameter log_file_name_convert...
- oracle 10g中db_recovery_file_dest和log_archive_dest参数的关系
- 归档日志路径三个参数DB_RECOVERY_FILE_DEST和LOG_ARCHIVE_DEST和LOG_ARCHIVE_DEST_n 2012-06
- 做dg时遇到的log_archive_dest、log_archive_dest_1、db_recovery_file_dest之间互相影响
- 归档日志路径三个参数DB_RECOVERY_FILE_DEST和LOG_ARCHIVE_DEST和LOG_ARCHIVE_DEST_n
- 使用.pdb方式(即:archive file方式)插入pdb时,请不要使用SOURCE_FILE_NAME_CONVERT参数.