关键字
ORA-00344、ORA-27040
适用产品
AnyBackup 5.0.x
AnyBackup 6.0.x
超易备 5.0.x
问题描述
在使用 AnyBackup 进行 Oracle 定时备份异机恢复时,恢复任务执行失败,执行输出中提示如下错误信息:
数据库RMAN进程执行出现异常。(错误位置:ncOracleExecThread.cpp:455)(附加信息:ORA-00344: unable to re-create online log '/u01/app/oracle/oradata/orcl/redo01.log' ORA-27040: file create error, unable to create file Linux Error: 2: No such file or directory(错误提供者: Unknown Provider,错误值: 344,错误位置:ncOciSession.cpp:327))
问题影响
Oracle 无法完成异机恢复。
问题原因
Oracle 异机恢复时,异机操作系统上不存在原机数据库 redo 日志路径,导致 Oracle 恢复时无法创建 redo 日志,从而导致恢复失败。
解决方案
为了解决该问题,需要在异机操作系统上创建原机的 redo 日志路径,且 oracle 用户需具备读写权限。具体步骤如下:
1. 使用 SSH 工具以 root 用户登录 Oracle 异机服务器后台;
2. 创建原机 redo 日志路径,并赋予对应权限执行如下命令:
mkdir -p /u01/app/oracle/oradata/orcl/
chown oracle:oinstall /u01/app/oracle/oradata/orcl
其中,/u01/app/oracle/oradata/orcl/ 为原机 redo 日志路径,具体以实际环境为准。
3. 重新将异机数据库启动到 nomount 状态,重新发起恢复即可。
更多信息
关于 Oracle 数据库报错代码:ORA-00344和 ORA-27040的更多信息,请参考 Oracle 官方文档:Database Error Messages。