11g的RMAN在命令出错后退出程序

今天尝试使用11gRMAN进行恢复时,发现了这个问题。

 

 

刚开始还没有太在意,后来发现,几乎只要命令没有正确的返回,都会造成这个错误,而且其中的信息还包括RMAN-600这种内部错误。

类似的错误包括:

RMAN> startup mount

已连接到目标数据库 (未启动)
Oracle
实例已启动
DBGANY:     Mismatched message length! [14:05:33.050] (krmiduem)
DBGANY:     Mismatched message length! [14:05:33.051] (krmiduem)
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00600: internal error, arguments [3045] [] [] [] []
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: startup
命令 ( 09/04/2008 14:05:33 ) 失败
ORA-00205:
标识控制文件时出错, 有关详细信息, 请查看预警日志
$

控制文件出错,RMAN并没有给出错误原因,而是让用户直接去看alert日志,首先在可读性方面就有问题。其次rman命令的错误不应该导致rman工具的退出。

类似的错误还有:

RMAN> restore database;

启动 restore 04-9 -08
使用通道 ORA_DISK_1

创建数据文件, 文件号 = 1 名称 = /dev/vx/rdsk/datavg/rac11g_system_1_1g
DBGANY:     Mismatched message length! [14:18:20.868] (krmiduem)
DBGANY:     Mismatched message length! [14:18:20.870] (krmiduem)
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00600: internal error, arguments [3045] [] [] [] []
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore
命令 ( 09/04/2008 14:18:20 ) 失败
ORA-01180:
无法创建数据文件 1
ORA-01110:
数据文件 1: '/dev/vx/rdsk/datavg/rac11g_system_1_1g'
$

以及错误:

RMAN> catalog backuppiece '+DATA/RAC11G/01jpk0bj_1_1';

DBGANY:     Mismatched message length! [14:33:30.426] (krmiduem)
DBGANY:     Mismatched message length! [14:33:30.471] (krmiduem)
DBGANY:     Mismatched message length! [14:33:30.473] (krmiduem)
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00600: internal error, arguments [3045] [] [] [] []
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: catalog
命令 (default 通道上, 09/04/2008 14:33:30 ) 失败
RMAN-00600: internal error, arguments [3045] [] [] [] []
ORA-19870:
还原备份片段 +DATA/rac11g/01jpk0bj_1_1 时出错
ORA-19505:
无法识别文件"+DATA/rac11g/01jpk0bj_1_1"
ORA-17503: ksfdopn: 2
未能打开文件 +DATA/rac11g/01jpk0bj_1_1
ORA-15173: entry '01jpk0bj_1_1' does not exist in directory 'rac11g'
$

检查了metalink,发现似乎是11gbug,在Bug No. 7027628中描述了这个错误,不过这个bug并不是一个基础bug,而是指向了另一个看起来和当前问题不相关的错误,不管怎样,根据这个bug描述的方法是可以避免错误的。

$ bash
bash-3.00$ export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
bash-3.00$ rman target /

Recovery Manager: Release 11.1.0.6.0 - Production on Thu Sep 4 17:58:31 2008

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: RAC11G (DBID=1712482917)

RMAN> catalog backuppiece '+DATA/RAC11G/01jpk0bj_1_1';

using target database control file instead of recovery catalog
ORA-19870: error while restoring backup piece +DATA/rac11g/01jpk0bj_1_1
ORA-19505: failed to identify file "+DATA/rac11g/01jpk0bj_1_1"
ORA-17503: ksfdopn:2 Failed to open file +DATA/rac11g/01jpk0bj_1_1
ORA-15173: entry '01jpk0bj_1_1' does not exist in directory 'rac11g'

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of catalog command at 09/04/2008 17:58:40
RMAN-06209: List of failed objects
RMAN-06211: ==========================
RMAN-06212:   Object Type   Filename/Handle
RMAN-06213: --------------- ---------------------------------------------------
RMAN-06214: Backup Piece    +DATA/rac11g/01jpk0bj_1_1

NLS_LANG设置为非中文环境,就可以临时避免这个问题的产生。Oracle计划在11.1.0.7fixed这个bug

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-442180/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/4227/viewspace-442180/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值