文档解释
ORA-16172: archive logs detected beyond Terminal End-Of-Redo
Cause: An attempt to archive a Terminal End-Of-Redo archive log to a remote destination failed due the existence, at the remote site, of archive logs containing REDO in the future of the Terminal EOR.
Action: None
ORA-16172表示Archivelogs检测到了落后于终端结束位置(Terminal End-Of-Redo)的日志文件。
官方解释
ORA-16172 表示 Archivelogs检测到了落后于终端结束位置(Terminal End-Of-Redo)的日志文件。 这是由于实例失去和发布已经生成的 archivelogs ,尽管 Oracle 的控制文件显示为已经发布。可能是由启用”nologging operations”或者”suppress archiving” 造成,也可能是由于实例进入了非正常关闭(instance failure)。
常见案例
ORA-16172 错误常见于初次备份开始时,或使用RMAN 执行归档操作,导致一旦再次打开数据库,新的归档操作无法继续,因为系统不能找到失去的归档日志或新的日志。
一般处理方法及步骤
1. 通过RMAN查找数据库和控制文件之间的差异;
2. 如果在控制文件中发现了未归档的日志,可以尝试立即归档这些日志文件;
3. 使用RMAN的重做复制配置,并将变更应用于控制文件,并停止数据库;
4. 修改redo log文件,删除未归档的日志文件;
5. 启动数据库;
6. 启用RMAN的”force logging”,从而保证所有操作都是可归档的;
7. 使用RMAN释放归档日志,以释放空间。