ORACLE10G DG配置中两个参数db_file_name_convert和log_file_name_convert

ORACLE10G DG配置中,两个参数db_file_name_convertlog_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_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'

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值