RAC ORA-16019 报错

本文解决了一个关于Oracle数据库启动失败的问题,错误提示为ORA-16019,涉及LOG_ARCHIVE_DEST_1与LOG_ARCHIVE_DEST或LOG_ARCHIVE_DUPLEX_DEST设置冲突。通过调整归档日志配置解决了该问题。
报错信息:

[ grid@dominic1 ~]$ srvctl start database -d dominic 
PRCR-1079 : Failed to start resource ora.dominic.db 
CRS-5017: The resource action "ora.dominic.db start" encountered the following error: 
ORA-16019: cannot use LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST 
. For details refer to "(:CLSN00107:)" in "/dba/app/11.2/grid/log/dominic2/agent/crsd/oraagent_oracle/oraagent_oracle.log". 

CRS-5017: The resource action "ora.dominic.db start" encountered the following error: 
ORA-16019: cannot use LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST 
. For details refer to "(:CLSN00107:)" in "/dba/app/11.2/grid/log/dominic1/agent/crsd/oraagent_oracle/oraagent_oracle.log". 

CRS-2674: Start of 'ora.dominic.db' on 'dominic2' failed 
CRS-2674: Start of 'ora.dominic.db' on 'dominic1' failed 
CRS-2632: There are no more servers to try to place resource 'ora.dominic.db' on that would satisfy its placement policy


通过此报错可以知道, 是归档路径出现错误:
 
  查看LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST 是不能共存的.  
  但是log_archive_dest_n  和 log_archive_dest  在一次迁移的时候,确实可以的.  估计是当时归档路径的时候 设置了错误.引起, 最后解决的方法是:

1 :  在oracle 用户的家目录下$ORACLE_HOME/dbs 找到参数文件,查看 对应共享存路径位置:

oracle@dominic1 dbs]$ cat initdominic1.ora 
SPFILE='+DATA/dominic/spfiledominic.ora'

2 :  到处spfile 文件到本地目录 编辑:
 通过CP 命令 

3 :  创建 spfile参数到共享存储 (  在这里,如果建在某个节点本地, 那么另一个节点是不能共享,打不开的)

create spfile='+DATA/dominic/spfiledominic.ora' from pfile='/dba/app/oracle/pfile_s'

4 : 启动库:  srvctl start database -d dominic

5 : ok 了!

<think>嗯,用户遇到了Oracle11gRAC环境中的ORA-01565错误,这个错误通常和spfile文件访问有关。从引用内容看,用户已经收集了一些相关案例,包括权限问题、ASM磁盘组挂载问题等。用户的核心诉求是定位文件识别问题并找到解决方案。用户提供的引用信息很有价值:[^1]和[^2]都提到spfile路径识别失败,[^3]则指出可能是二进制文件权限问题。特别注意到引用[3]提到"bin/oracle权限引起",这提示我需要检查GRID和RDBMS的安装权限。考虑到RAC环境的复杂性,需要从多个维度排查:首先确认ASM磁盘组状态,因为+DATA开头的路径属于ASM存储;其次检查集群资源注册情况,spfile位置应该与srvctl配置一致;最后是操作系统层面的权限检查,包括文件权限和SELinux等安全设置。用户没有提到具体操作步骤,所以我会给出完整的诊断流程。特别要注意的是RAC环境下需要同时检查所有节点,因为某个节点的配置错误就可能导致整个集群启动失败。ORA-12547报错通常意味着进程通信中断,往往伴随权限问题。解决方案部分将按优先级排序:最简单的权限修复放在前面,复杂的存储恢复放在后面。引用[3]提供的chmod6751方案需要谨慎操作,必须确认两个属主是否正确。另外补充了环境变量和参数文件备份的建议,这是很多文档容易忽略的实用技巧。</think>以下是针对 Oracle 11g RAC 环境中 ORA-01565 错误的完整解决方案,结合错误本质和引用案例逐步排查: --- ### **错误原因分析** ORA-01565 表明数据库无法识别或访问 `spfile` 文件,通常由以下原因引起: 1. **文件路径错误**:`spfile` 路径在参数文件或 ASM 中配置不正确 2. **权限问题**:Oracle 用户无权访问 ASM 磁盘组或 OS 文件(如引用[2][3]所述) 3. **ASM 状态异常**:磁盘组未挂载或存储路径失效(引用[1][2]中的 `ORA-17503`) 4. **集群注册不一致**:RAC 资源未正确注册 `spfile` 位置 --- ### **逐步解决方案** #### **步骤 1:检查 ASM 磁盘组状态** ```sql -- 以 grid 用户登录 ASM 实例 sqlplus / as sysasm SELECT name, state FROM v$asm_diskgroup; ``` - **预期结果**:`+DATA` 状态应为 `MOUNTED` - **异常处理**: - 若状态为 `DISMOUNTED`,挂载磁盘组: ```sql ALTER DISKGROUP DATA MOUNT; ``` -报错 `ORA-15032`,检查 ASM 磁盘权限(参考引用[3]) #### **步骤 2:验证 spfile 物理存在** ```bash # 确认 ASM 中文件是否存在 asmcmd ls "+DATA/rac11g/spfilerac11g.ora" ``` - **若文件不存在**: - 从备份恢复 `spfile`,或使用 `pfile` 启动: ```bash sqlplus / as sysdba STARTUP PFILE='/u01/app/oracle/product/11.2.0/dbhome_1/dbs/init<sid>.ora'; ``` #### **步骤 3:检查集群资源注册** ```bash # 以 root 用户执行 crsctl stat res -t -w "TYPE = ora.database.type" # 查看数据库资源配置 srvctl config database -d <db_name> # 检查 spfile 路径配置 ``` - **修正错误路径**(如引用[2]案例): ```bash srvctl modify database -d <db_name> -p '+DATA/rac11g/spfilerac11g.ora' ``` #### **步骤 4:修复权限问题(关键步骤)** 1. **检查文件权限**: ```bash ls -l $ORACLE_HOME/bin/oracle # 确认权限为 -rwsr-s--x (6751) ``` 2. **按引用[3]修复权限**: ```bash # 以 root 用户执行 chown grid:oinstall $ORACLE_HOME/bin/oracle chmod 6751 $ORACLE_HOME/bin/oracle ``` 3. **检查 ASM 文件权限**: ```bash asmcmd ls -l "+DATA/rac11g/spfilerac11g.ora" ``` - 确保权限为 `-rw-r-----` 且属主为 `oracle:dba` #### **步骤 5:重启集群服务** ```bash # 以 root 用户执行 crsctl stop cluster -all # 停止整个集群 crsctl start cluster -all # 重新启动集群 srvctl start instance -d <db_name> -i <instance_name> # 启动数据库实例 ``` --- ### **预防措施** 1. **定期验证配置**: ```bash srvctl config database -d <db_name> > /backup/db_config_$(date +%F).txt ``` 2. **备份关键文件**: ```bash asmcmd cp '+DATA/rac11g/spfilerac11g.ora' '/backup/spfile_$(date +%F).ora' ``` 3. **使用 RMAN 自动备份 spfile**: ```sql CONFIGURE CONTROLFILE AUTOBACKUP ON; ``` > **重要提示**:操作前备份 ASM 和数据库文件!若问题仍存在,检查 `alert_<sid>.log` 和 `crsd.log` 中的 ORA-12547 等关联错误(如引用[2][3])。 --- ### 相关问题 1. **如何诊断 Oracle RAC 中的 ORA-17503 存储访问错误?** 2. **Oracle 11g RAC 环境下如何安全迁移 spfile 到新 ASM 磁盘组?** 3. **集群资源管理器(CRS)注册信息不一致会导致哪些典型故障?** [^1]: ORA-01565 错误案例分析与 ASM 文件访问失败 [^2]: RAC 环境权限变更引发的启动故障 [^3]: 二进制文件权限修复解决 ORA-12547
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值