一起学习网 一起学习网

ORA-16091: dependent archive log destination already archived ORACLE 报错 故障修复 远程处理

文档解释

ORA-16091: dependent archive log destination already archived

Cause: An archive log destination contains a dependency to another archive log destination that has previously been archived.

Action: The parent archive log destination cannot be dependent on another archive log destination. Use the ALTER SYSTEM command to remove one of the dependency attributes.

ORA-16091 表示某个归档日志的目的地已经归档过,不能重复归档。

ORA-16091: dependent archive log destination already archived

意思是,一个归档日志的目标是已经归档的,并且可能创建了一个受监控日志。

官方解释

ORA-16091: dependent archive log destination already archived

Cause: An attempt to stop a dependent log has failed because it has already been archived.

Action: Remove any dependent jobs associated with this archive log destination, and retry the operation.

常见案例

当我们在Oracle数据库归档日志时,如果在受影响的归档日志的目的地已经归档时,就会返回ORA-16091错误。

一般处理方法及步骤

1. 检查归档状态并写入到系统中,可以采用select * from V$ARCHIVED_LOG查询SHOW Archived为YES的数据,如果没有数据则说明日志没有归档。

2. 检查归档日志的依赖性,运行SELECT DISTINCT DEST_ID FROM V$ARCHIVE_DEST WHERE DEST_ID! = ‘-1’查看受影响的目标日志。

3. 如果检查到受影响的目标日志,则需要先删除这些依赖性,运行ALTER SYSTEM SET LOG_ARCHIVE_DEST_n=” WHERE n in(list of dependent archive logs);

4. 重新启动归档,ALTER SYSTEM SET LOG_ARCHIVE_DEST_1=’LOCATION=userenv,ENABLE=TRUE,MANDATORY=TRUE’;

5. 再次检查归档日志状态,select * from V$ARCHIVED_LOG;

6. 重新设置依赖性,ALTER SYSTEM SET LOG_ARCHIVE_DEST_n=” WHERE n in(list of dependent archive logs);

7. 启动监控日志。