Dbvisit Standby Error Messages

Most Dbvisit Standby error messages are self-explanatory, and the resolution is in the error message itself.

However some error messages may require further elaboration in order to resolve them. They are listed here:

Dbvisit Standby error code or error messageResolution
Return code = 1547ORA-01152: file string was not restored from a sufficiently old backup

ERROR Message: Some datafiles may be corrupted or not renamed in the controlfile. Consult v$_datafile and v$_datafile_header views
and verify if the following datafiles are present on the server

The SQL queries was requested so that we can see what is the difference between the primary and standby from a datafile point of view. The v$datafile is based on the controlfile and v$datafile_header is the actual file. It is just useful to get all the details from these queries so we can compare primary/standby from datafile point of view. If the incarnation is different, it could be that they have files in the FRA that is not allowed (zip files etc) or possibly files from an old database that was not properly removed - we have seen this in the past.

Run the following from sqlplus and upload the output - (to be executed on the primary)

set linesize 200 pagesize 20
col name for a50
col error for a20
col checkpoint_change# for 999999999999
col unrecoverable_change# for 999999999999
col first_nonlogged_scn for 999999999999
col current_scn for 999999999999
col resetlogs_change# for 999999999999
col controlfile_change# for 999999999999
spool dbv-primary-6043.txt

alter session set nls_date_format='dd/mm/yyyy:hh24:mi:ss';

select file#, status, enabled, name, round(bytes/1024/1024,2) size_mb, checkpoint_change#, unrecoverable_change#, first_nonlogged_scn, checkpoint_change# from v$datafile df order by file#;

select file#, name, status, error, recover, fuzzy, creation_change#, checkpoint_change#, round(bytes/1024/1024,2) size_mb from v$datafile_header order by 1;

select dbid, name, resetlogs_change#, checkpoint_change#, controlfile_change#, controlfile_sequence#, controlfile_time, current_scn from v$database;
select * from v$database_incarnation;

spool off

**
Run the following from sqlplus and upload the output - (to be executed on the standby server)

set linesize 200 pagesize 20
col name for a50
col error for a20
col checkpoint_change# for 999999999999
col unrecoverable_change# for 999999999999
col first_nonlogged_scn for 999999999999
col current_scn for 999999999999
col resetlogs_change# for 999999999999
col controlfile_change# for 999999999999
spool dbv-primary-6043.txt

alter session set nls_date_format='dd/mm/yyyy:hh24:mi:ss';

select file#, status, enabled, name, round(bytes/1024/1024,2) size_mb, checkpoint_change#, unrecoverable_change#, first_nonlogged_scn, checkpoint_change# from v$datafile df order by file#;

select file#, name, status, error, recover, fuzzy, creation_change#, checkpoint_change#, round(bytes/1024/1024,2) size_mb from v$datafile_header order by 1

select dbid, name, resetlogs_change#, checkpoint_change#, controlfile_change#, controlfile_sequence#, controlfile_time, current_scn from v$database;

select * from v$database_incarnation;

spool off

 

ORA-01152: file 1 was not restored from a sufficiently old backup   Cause: An incomplete recovery session was started, but an insufficient number of redo logs were applied to make the database consistent. This file is still in the future of the last redo log applied. 
Action: 
1) Run Dbvisit Standby to apply additional log files until the database is consistent. Each time Dbvisit Standby will notify of the error, but the log files will be applied. This will happen until sufficient log files have been applied.
2) Restore the standby database datafiles from an older backup and run dbvisit -R <DDC> to resynch the primary database with the standby database.