ORA-00313 ORA-00312 ORA-27037

本文解决Oracle Server Enterprise Edition中Standby数据库在线Redo Logs丢失导致的ORA-00313, ORA-00312, ORA-27037错误。提供检查和设置log_file_name_convert参数、取消Managed Recovery过程、清理日志组、重新创建Standby Redo Logs等解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因:因为在进行restore database的时候没有设置好log_file_name_convert,导致redolog没有恢复到指定地点,导致在打开日志应用的时候出现了改问题




ORA-00313, ORA-00312, ORA-27037 in Standby Database [ID 601835.1]


 

Modified 20-APR-2009     Type PROBLEM     Status MODERATED

 

In this Document
  Symptoms
  Cause
  Solution
  References


This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process, and therefore has not been subject to an independent technical review.

Applies to:

Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 10.2.0.4
This problem can occur on any platform.

Symptoms

Following errors in alert.log of standby database during startup of the standby database:

ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u03/oradata/prod/redo01b.log'
ORA-27037: unable to obtain file status

Cause

Online Redo logs missing on standby database.

Solution

You can safely ignore these messages. Online redo logs will be created automatically when you activate the standby after switchover or failover.

If you want to fix these messages then please use following steps: 

1.  Check and set "log_file_name_convert" parameter if the location of log files are different on primary and standby.

SQL> alter system set log_file_name_convert = "'<location on primary>','<location on standby>'" scope=spfile;

If you are using pfile then set the parameter in init file after shutting down the database:

*.log_file_name_convert = '<location on primary>','<location on standby>'

For 10gR2 only : Set this parameter even if the location of the redo logs are same on both primary and standby otherwise you may get ORA-19527 and ORA-312 while or after implementing the below steps.
This is due to internal bug in 10.2.

2.  Cancel Managed Recovery process on the standby:

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; 

3.  Execute the command to clear all log groups on standby for each log group (for each log group):

SQL>alter database clear logfile group 1;

4.  Check the v$log view to confirm the size and status.

5.  Recreate standby redo logs on standby (only if standby Redo logs are also missing) using:

(a) Drop the standby redo logfile group(s) (check v$standby_log)

SQL> alter database drop standby logfile group 4;

 (b) Recreate the standby logfile group(s)

SQL> alter database add standby logfile group 4 ('/u03/redo/stby01.log') size 50m;

 

References

BUG:4724888 - DATAGUARD ERROR IN 10.2
NOTE:185076.1 - Standby Redo Logs are not Created when Creating a 9i Data Guard DB with RMAN
NOTE:352879.1 - ORA-19527 reported in 10gR2 Standy database


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值