We're here to help!

File Not Found - Return code = 187, Return code = 5051

Follow

Read our docs The steps in this article apply when you try to run SSD(Synchronize Standby Database), CSD(Create Standby Database) or Log gap report and these messages :File Not Found and Error: cannot obtain next change for standby database. Some standby datafiles may be missing or corrupted

Problem Details

Problem Statement

What is required to address the File Not Found messages after running a SSD, CSD or Log gap report

Applicable Error Code

N/A

Affected Versions

v7 and v8

Affected Platforms

ALL

Description

When running a SSD, CSD or Log Gap report and you get the following error messages : 

Error: cannot obtain next change for standby database. Some standby datafiles may be missing or corrupted:
file#              = 1
name              = /u01/oracle/oradata/ORCL/system01.dbf
status            = SYSTEM
bytes              = 0
checkpoint_change# = 0
error              = FILE NOT FOUND

Dbvisit Standby terminated.

Return code = 5051

Dbvisit Standby terminated.

Return code = 187

Solution

A good starting point is to query the two views v$datafile_header and v$datafile, which looks at the datafile header and the controlfile.

The result is "file not found".

The suggestion is to :

1. Review the environment and retry the operation.
2. Look especially at system load, disk I/O etc.
3. Before running any function do a log transfer and log apply at least once.


set linesize 300
spool dbv.txt

select file#,
substr(name, 1, 80) NAME,
to_char(bytes, 'FM9999999999999') BYTES,
status,
recover,
fuzzy,
substr(error,1,80) ERROR,
to_char(CHECKPOINT_CHANGE#,'FM999999999999999999999999999999') CHECKPOINT_CHANGE#,
to_char(CHECKPOINT_TIME,'YYYY-MM-DD:HH24:MI:SS') CHECKPOINT_TIME,
to_char(RESETLOGS_CHANGE#,'FM999999999999999999999999999999') RESETLOGS_CHANGE#
from v$datafile_header;

select file#,
substr(name, 1, 80) NAME,
to_char(bytes, 'FM9999999999999') BYTES,
status,
to_char(CHECKPOINT_CHANGE#,'FM999999999999999999999999999999') CHECKPOINT_CHANGE#,
to_char(checkpoint_time,'YYYY-MM-DD:HH24:MI:SS') CHECKPOINT_TIME,
to_char(CREATION_CHANGE#,'FM999999999999999999999999999999') CREATION_CHANGE#,
to_char(CREATION_TIME,'YYYY-MM-DD:HH24:MI:SS') CREATION_TIME,
to_char(LAST_CHANGE#,'FM999999999999999999999999999999') LAST_CHANGE#,
to_char(LAST_TIME,'YYYY-MM-DD:HH24:MI:SS') LAST_TIME
from v$datafile;

spool off


Have more questions? Submit a request

Comments