ORA-10873: file 4 needs to be either taken out of backup mode or media

问题描述:

今天主机宕机后,使用./autostart无法启动数据库。报出一下错误 ORA-10873: file 4 needs to be either taken out of backup mode or media


问题分析:

在宕机的时候数据库正在备份状态,此时意外停机则数据库的备份无法正常进行。而在数据库备份的时候数据库中的v$backup表中会将STATUS列置成Active状态,此时停机数据库无法将把STATUS换成NOT ACTIVE状态。而v$backup表中STATUS列不是NOT ACTIVE,这数据库无法正常启动。

 

develop:/auto>su - oradvp -c "lsnrctl start"

LSNRCTL for IBM/AIX RISC System/6000: Version 11.2.0.2.0 - Production on 20-JUL-2012 12:23:07

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started
develop:/auto>su - dvpadm -c "startsap"
Checking DVP Database
Database is not available via R3trans
-------------------------------------------
Trying to start DVP database ...
Log file: /home/dvpadm/startdb.log
/usr/sap/DVP/SYS/exe/run/startdb: Terminating with error code 12
DB startup failed

please send the tracefile /home/dvpadm/startsap.trc to support

develop:/auto>cd  
develop:/>cd /home/dvpadm            
develop:/home/dvpadm>ls
.TTauthority               .j2eeenv.sh                .sapenv_develop.sh         startsap_DVEBMGS00.log.1   stopsap.trc
.Xauthority                .j2eeenv_develop.csh       .sapsrc.csh                startsap_DVEBMGS00.log.2   stopsap_DVEBMGS00.log
.cshrc                     .j2eeenv_develop.sh        .sapsrc.sh                 startsap_DVEBMGS00.log.3   stopsap_DVEBMGS00.log.1
.cshrc.1                   .login                     .sapsrc_develop.csh        startsap_DVEBMGS00.log.4   stopsap_DVEBMGS00.log.2
.dbenv.csh                 .login.1                   .sapsrc_develop.sh         startsap_DVEBMGS00.log.5   stopsap_DVEBMGS00.log.3
.dbenv.sh                  .profile                   .sh_history                startsap_DVEBMGS00.log.6   stopsap_DVEBMGS00.log.4
.dbenv_develop.csh         .profile.1                 .wmrc                      startsap_DVEBMGS00.log.7   stopsap_DVEBMGS00.log.5
.dbenv_develop.sh          .profile.2                 dsierror.log               startsap_DVEBMGS00.log.8   stopsap_DVEBMGS00.log.6
.dt                        .sapenv.csh                startdb.log                startsap_DVEBMGS00.log.9   stopsap_DVEBMGS00.log.7
.dtprofile                 .sapenv.sh                 startsap.trc               startsap_saphostagent.log  stopsap_DVEBMGS00.log.8
.j2eeenv.csh               .sapenv_develop.csh        startsap_DVEBMGS00.log     stopdb.log                 stopsap_DVEBMGS00.log.9
develop:/home/dvpadm>more startdb.log

------------------------------ Fri Jul 20 12:23:21 BEIST 2012
LOGFILE FOR STARTING ORACLE

Trying to start DVP database ...

----
<think>好的,用户遇到了RMAN备份命令失败的问题,具体错误是RMAN-03009和ORA-27041。我需要先分析这两个错误的含义以及可能的原因。 首先,RMAN-03009表示在指定的通道(这里是c2)上执行备份命令时失败。而ORA-27041是操作系统级别的错误,通常与文件无法打开有关。根据引用[1]中的内容,可能需要检查Oracle Advanced Security选项是否安装,尤其是当备份到磁盘时需要加密的情况。不过用户的问题可能更多涉及文件路径或权限问题。 接下来,ORA-27041的具体原因可能包括目标文件或目录不存在、权限不足,或者存储空间不足。用户需要确认备份目标路径是否正确,并且Oracle用户是否有写入权限。引用[3]提到了创建多个目录,比如/u01/app/oracle/fast_recovery_area等,这些目录可能和备份路径有关。如果备份脚本中指定的路径没有正确创建或权限设置不当,就会导致这个问题。 另外,检查通道配置是否正确,备份集的位置是否有效。例如,如果使用磁盘通道,需要确保BACKUP DESTINATION的路径存在且可写。如果是磁带备份,可能需要确认Oracle Secure Backup配置是否正确,如引用[1]中提到的使用SBT接口。 可能的解决步骤包括:验证备份路径是否存在,检查目录权限,确认存储空间,以及查看通道配置。此外,还可以查看详细的日志文件,获取更多错误信息,帮助进一步诊断问题。用户可能需要按照引用[3]中的目录结构创建相应的文件夹,并设置正确的权限,比如使用mkdir -p命令创建目录,并赋予Oracle用户适当的权限。 最后,确保RMAN的加密配置正确,特别是如果启用了加密功能,需要确认已安装Oracle Advanced Security选项,如引用[1]所述。如果问题仍然存在,可能需要检查操作系统级别的错误日志,或者尝试重新配置备份通道。</think>以下是针对RMAN备份失败错误$RMAN-03009$和$ORA-27041$的解决方案分析: ### 错误原因分析 1. **文件路径问题** - 备份目标路径不存在或不可访问 - 权限不足导致Oracle进程无法写入(建议检查$oracle$用户对目标目录的读写权限)[^3] 2. **存储空间不足** - 检查目标存储设备剩余空间:`df -h /备份路径` 3. **通道配置错误** - 通道参数配置与实际存储类型不匹配(如将磁盘通道误配为磁带) 4. **加密配置冲突** - 若使用加密备份需确认已安装Oracle Advanced Security选项[^1] ### 分步解决方案 #### 步骤1:验证路径有效性 ```bash # 检查路径是否存在(示例路径) ls -ld /u01/app/oracle/fast_recovery_area/DG02/controlfile # 创建缺失目录(按需修改路径) mkdir -p /your/backup/path && chown -R oracle:oinstall /your/backup/path ``` #### 步骤2:检查通道配置 ```sql RMAN> show channel; -- 确认通道类型与存储介质匹配 -- 正确磁盘通道示例 CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/backup/%U'; ``` #### 步骤3:空间检查 ```bash # 检查文件系统空间 df -h | grep backup # 检查ASM磁盘组空间(若使用ASM) asmcmd lsdg ``` #### 步骤4:错误日志分析 ```bash # 查看alert.log获取详细信息 tail -100f $ORACLE_BASE/diag/rdbms/${ORACLE_SID}/${ORACLE_SID}/trace/alert_${ORACLE_SID}.log ``` ### 补充说明 若需恢复控制文件,可参考命令: ```sql RMAN> restore controlfile from '/u01/backup/ctl_file_04mr66b3_1_1_20111108'; -- [^2] ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值