crs-34927: cannot stop resource 'ora.asm' outside of its resource group 'ora
时间: 2024-05-06 20:16:05 浏览: 391
这个错误通常发生在Oracle集群环境中。原因是你试图在不属于 ora 资源组的资源组中停止 ora.asm 资源。请确保你在 ora 资源组中停止 ora.asm 资源。可以使用以下命令来停止 ora.asm 资源:
```
$ crsctl stop resource -ora.asm -f
```
-f 参数用于强制停止资源,即使它正在执行某些操作。如果你不想使用 -f 参数,可以使用以下命令:
```
$ crsctl stop resource -ora.asm -g ora -f
```
这会将 ora.asm 资源停止到它所属的 ora 资源组中。
相关问题
PRCR-1079 : Failed to start resource ora.asm CRS-5017: The resource action "ora.asm start" encountered the
following error:
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATA/asm/asm_parameterfile/registry.253.1031905195'
ORA-17503: ksfdopn:2 Failed to open file +DATA/asm/asm_parameterfile/registry.253.1031905195
ORA-15056: additional error message
ORA-17503: ksfdopn:2 Failed to open file +DATA/asm/asm_parameterfile/registry.253.1031905195
This error message indicates that the ASM resource failed to start because there is an issue with the ASM parameter file. Specifically, the error suggests that the ASM instance was unable to access the parameter file, which is located in the +DATA/asm/asm_parameterfile directory.
To resolve this issue, you will need to check the permissions and ownership of the ASM parameter file and ensure that the ASM instance has the necessary rights to access it. You may also need to check the disk space and ensure that there is enough space available for the ASM instance to operate.
If the issue persists, you may need to recreate the ASM parameter file and restart the ASM instance. You can do this using the ASMCA utility or by manually editing the parameter file.
Note: It is recommended to take a backup of the parameter file before making any changes to it.
CRS-2674: Start of 'ora.asm' on 'gzjcc2' failed CRS-2679: Attempting to clean 'ora.asm' on 'gzjcc2' CRS-2681: Clean of 'ora.asm' on 'gzjcc2' succeeded CRS-4000: Command Start failed, or completed with errors.
<think>好的,我现在需要帮助用户解决Oracle ASM实例启动失败的问题,具体错误是ORA-ASM start failed,伴随CRS-2674、CRS-2679、CRS-2681和CRS-4000。用户还提到了引用中的一些其他错误,比如CRS-5017和ORA-01017,这可能和认证有关。首先,我需要回忆这些错误代码的含义以及常见的解决方法。
首先,CRS-2674通常表示资源启动失败,可能是因为依赖项未满足。CRS-2679可能涉及资源无法执行操作,而CRS-2681可能意味着资源在尝试启动后未能达到运行状态。CRS-4000是一个通用错误,表示命令执行失败。结合用户提到的引用,特别是引用4中的CRS-5017和ORA-01017,这可能涉及ASM实例的认证问题,比如密码文件问题或权限错误。
接下来,我需要检查可能的步骤来解决这些问题。根据引用中的信息,可能的步骤包括:
1. 检查ASM实例的依赖资源,比如网络配置(如HAIP)、集群服务状态等。例如,CRS-2672错误提到HAIP启动失败,这可能影响ASM的启动。
2. 验证ASM的磁盘组和权限是否正确。如果ASM无法访问存储设备,会导致启动失败。检查ASM磁盘路径、权限(如grid用户的权限)、磁盘组的可用性。
3. 检查密码文件和认证。ORA-01017提示无效的用户名或密码,可能需要检查ASM实例的密码文件是否存在,权限是否正确,以及是否使用了正确的认证方式。比如,密码文件是否位于$ORACLE_HOME/dbs目录,并且命名为+ASM,权限是否为640,属主是否正确。
4. 检查集群件日志,如ohasd、crsd的日志,以及ASM的alleet日志,确定具体的错误原因。比如,用户提到的alleet<hostname>.log中的ACFS错误可能涉及存储配置问题。
5. 确保网络配置正确,特别是私有网络的接口配置,如eth4和eth6的IP地址是否正确,子网配置是否与集群设置匹配(引用5中的网络接口列表可能相关)。
6. 可能需要重启集群服务或重新配置资源。例如,使用crsctl命令停止和启动集群服务,或者强制清理资源后重新启动。
在步骤中,可能需要用户执行以下操作:
- 检查集群状态:使用crsctl check cluster或crsctl stat res -t查看资源状态,确认是否有其他资源失败导致依赖问题。
- 检查ASM实例的alleet日志,通常在$ORACLE_BASE/diag/asm/+asm/+ASM/trace/alleet_+ASM.log,查找具体的错误信息。
- 验证密码文件是否存在,位置是否正确,权限是否足够。可能需要使用orapwd重建密码文件。
- 检查ASM磁盘的权限,确保grid用户有访问权限,使用kfod工具确认磁盘是否可见。
- 检查网络配置,特别是HAIP相关的配置,确保私有网络接口正常,没有IP冲突。
此外,引用3提到了ORA-01078,可能与参数文件有关,因此需要检查ASM的初始化参数文件是否正确,参数设置是否合理,如instance_type、asm_diskgroups等。
用户可能还需要检查系统资源,如内存、文件句柄等是否足够,避免资源不足导致启动失败。
总结,可能的解决步骤包括验证依赖服务、检查认证和密码文件、检查ASM磁盘权限和可用性、检查网络配置、查看详细日志定位问题,最后可能需要重启集群服务或重新配置资源。</think>### Oracle ASM实例启动失败问题解决方案
#### 1. 检查集群资源状态
首先使用以下命令检查集群资源状态,确认是否存在依赖资源未启动:
```bash
crsctl stat res -t -init
```
若发现`ora.cluster_interconnect.haip`(HAIP资源)或`ora.asm`状态异常(如`OFFLINE`),需优先解决依赖资源问题。例如,CRS-2672错误可能由网络配置错误导致[^1]。
#### 2. 验证ASM密码文件
ORA-01017错误表明ASM实例的认证失败。检查密码文件:
- **路径**: `$ORACLE_HOME/dbs/orapw+ASM`
- **权限**: 应为640,属主为`grid:oinstall`
- **重建密码文件**(必要时):
```bash
orapwd file=$ORACLE_HOME/dbs/orapw+ASM password=<密码> entries=10
```
#### 3. 检查ASM磁盘权限
ASM实例需要访问磁盘设备:
```bash
# 查看磁盘权限
ls -l /dev/oracleasm/disks/*
# 使用kfod检查磁盘可见性
$ORACLE_HOME/bin/kfod disks=all
```
确保所有ASM磁盘权限为`660`,属主为`grid:asmadmin`[^4]。
#### 4. 检查网络配置
HAIP依赖私有网络接口(如`eth4`和`eth6`):
```bash
# 检查接口IP和子网配置
ifconfig eth4; ifconfig eth6
# 验证集群网络配置
cat /etc/oracle/olr.loc | grep cluster_interconnects
```
确保子网配置与`oracle.install.crs.config.networkInterfaceList`参数一致[^5]。
#### 5. 分析日志定位问题
查看关键日志:
- **ASM Alert日志**:
```bash
tail -f $ORACLE_BASE/diag/asm/+asm/+ASM/trace/alleet_+ASM.log
```
- **OHASD日志**:
```bash
$GRID_HOME/log/<主机名>/ohasd/ohasd.log
```
若日志提示`ACFS-9156`或`ACFS-9322`,可能是存储驱动或挂载问题[^4]。
#### 6. 重启集群服务
尝试重启集群服务:
```bash
# 停止集群
crsctl stop has
# 清理残留资源
crsctl delete resource ora.asm -f
# 启动集群
crsctl start has
```
#### 7. 其他可能原因
- **参数文件错误**:检查`$ORACLE_HOME/dbs/init+ASM.ora`是否正确配置`asm_diskgroups`[^3]。
- **资源冲突**:使用`crsctl modify resource ora.asm -attr AUTO_START=always`强制自动启动。
---
阅读全文
相关推荐


















