ORA-38735: Wrong log number string in flashback log file header.

文档解释

ORA-38735: Wrong log number string in flashback log file header.

Cause: The log file number in the flashback database log file did not match the control file.

Action: If you are doing a FLASHBACK DATABASE, then the flashback cannot be performed because of the corrupted log. A restore and an incomplete recovery must be performed instead.

ORA-38735错误说明

ORA-38735错误消息,表明Flashback log文件中process scn中的日志号字符串是错误的。这通常发生在数据库升级之后。

常见案例

该错误通常发生在数据库升级后,由于Flashback Log Header信息对于不同版本的数据库具有不同的格式。因此,当尝试恢复此头段时,可能会遇到此错误。

解决方法

要解决此错误,您必须从头开始恢复每个Flashback文件。要执行此操作,可以使用系统中的DPipe工具。可以使用RMAN脚本或者Dbms_Pipe包来从头开始恢复环境中的每个Flashback Log文件。

在恢复过程中,首先要从头开始恢复每个Flashback Log文件,并确保相应的日志号都是准确的。然后,您可以恢复数据库,以重新建立环境中备份的所有信息。

有时,也可以使用recover old。只有当Flashback Log Header存在错误时,才会报ORA-38735。 因此,如果您要使用recover old,则首先必须检查要恢复的头段,以确保Flashback Log Header信息格式被正确识别,而不会报ORA-38735的错误。

此外,如果Flashback Log文件的头段信息可以从日志文件中检索,则可以使用v$logmnr_contents视图来检索日志。

另外,如果您需要发现某一特定SCN,可以使用TO_NUMBER函数来验证最后一次检出的SCN:

SELECT TO_NUMBER ● (LAST_CHECKPOINT_SCN) FROM v$logmnr_contents;

最后,使用CASE语句检出要恢复的Scn并重新创建新的Flashback Log文件:

Case WHEN 查出的SCN

重新创建新的Flashback Log文件

Else

恢复头段

End Case;

通过上述步骤,您可以解决ORA-38735的问题,以正常恢复先前的头段。

你可能感兴趣的