AnyBackup-Oracle DataGuard 主库异机恢复完成后启库失败,提示错误信息:ORA-03113,Oralce 数据库告警日志提示错误信息:ORA-16072
关键字
ORA-03113、ORA-16072
适用产品
- 超易备 5.0.x
- AnyBackup 5.0.x
- AnyBackup 6.0.x
- AnyBackup CDM 7.0.x
- AnyBackup Express 7.0.x
问题描述
在 AnyBackup 管理控制台上,对 Oracle DataGuard 主库的定时备份任务执行异机恢复,恢复完成后启库失败,提示如下信息:
alter database open resetlogs
*
第 1 行出现错误:
ORA-03113: 通信通道的文件结尾 进程 ID:
19963
会话 ID: 66 序列号: 29
查看 Oracle 数据库告警日志提示如下信息:
ORA-16072: a minimum of one standby database destination is required
问题影响
目标机 Oracle 数据库无法启动到 open 状态。
问题原因
Oracle DataGuard 主库是最高可用模式或者最大保护模式,该模式需要发送重做数据到至少一个备数据库。将备份的 Oracle DataGuard 主库恢复到目标机上,由于没有配置备库的相关信息,无法发送重做数据到备数据库上,就会导致该问题。
解决方案
为了解决该问题,需要将恢复完成的目标机的 Oracle 数据库的保护模式修改为最高性能模式,执行方案如下:
1. 使用 oracle 用户登录 Oracle 数据库服务器,将 Oracle 数据库启动到 mount 状态,执行命令如下:
su - oracle
sqlplus / as sysdba
startup mount;

2. 查看 Oracle 数据库的保护模式,执行命令如下:
select DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL from v$database;
上图示例中,MAXIMUM AVAILABILITY 表示最高可用模式,最大保护模式为 MAXIMUM PROTECTION.
3. 将 Oracle 数据库的保护模式切换到最高性能模式,执行命令如下:
alter database set standby database to maximize performance;
上图示例中,maximize performance 表示最高性能模式。
4. 启动 Oracle 数据库,执行命令如下:
alter database open;
更多信息
关于 Oracle 数据库报错代码:ORA-16072 和 ORA-03113 的更多信息,请参考 Oracle 官方文档:Database Error Messages