ASM实例启动报错:ORA-29701 :unable to connect to Cluster Manager

本文介绍了启动ASM实例时遇到ORA-29701错误的两种解决方案,包括检查并修改/etc/inittab文件及通过特定命令序列重启集群服务。

ASM实例启动报错:ORA-29701 :unable to connect to Cluster Manager

今天配置asm遇到一个问题,在启动asm实例的时候提示:
 ORA-29701 :unable to connect to Cluster Manager


Cause
Connect to CM failed or timed out.

Action
Verify that the CM was started. If the CM was not started, start it and then
retry the database startup. If the CM died or is not responding, check the
Oracle and CM trace files for errors.

 参考资料,如果出现上面的错误,就检查文件/etc/inittab,看看是否有下面的行:

 h1:35:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1

 如果没有上面的行,请添加上;如果注释掉,请取消注释

我按着说明也添加了.可还是提示同样的错误,我在oracle的官方论坛找到一种方法:

Please run the following batch files in the $ORACLE_HOME/bin directory

cd $ORACLE_HOME/bin

localconfig delete
localconfig add

This will help you to solve your problem

问题解决了,asm实例可以启动了

 

 

方法二:

ORA-29701: unable to connect to Cluster Manager
今天启动ASM报错了,ORA-29701: unable to connect to Cluster Manager
 
搜索了metalink 459775.1
 

Symptoms

When multiple oracle homes exist on a server, the startup of ASM instance fails with error:

ORA-29701: unable to connect to Cluster Manager

Cause

The cluster service is linked to one oracle home and the startup of the ASM instance to another oracle home and thus failing with ORA-29701

Solution

1. Stop CSS process currently running

$ Kill -9  


2. With the root user authentication switch to oracle_home/bin directory

#cd $ORACLE_HOME/bin
#localconfig reset $ORACLE_HOME

3. Start the CSS process

# /etc/init.d/init.cssd start


4. Start the ASM instance

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

转载于:http://blog.itpub.net/13024285/viewspace-677848/

你遇到的这个错误是在使用 **RMAN**(Recovery Manager)尝试启动 Oracle 数据库实例时发生的,关键错误信息如下: ``` ORA-01078: failure in processing system parameters ORA-01565: error in identifying file '+DATA/orcl/spfileorcl.ora' ORA-17503: ksfdopn:2 Failed to open file +DATA/orcl/spfileorcl.ora ORA-29701: unable to connect to Cluster Synchronization Service ... RMAN-04014: startup failed: ORA-29702: error occurred in Cluster Group Service operation ``` --- ### 🔍 错误分析 #### 1. `ORA-29701: unable to connect to Cluster Synchronization Service` 这是最关键的错误。它表明 **Oracle 实例无法连接到 CSS(Cluster Synchronization Service)**。 CSS 是 Oracle RAC(Real Application Clusters)中用于管理节点间同步和实例一致性的重要后台服务。如果你在 **RAC 环境或启用了 ASM 的单机环境中**运行数据库,CSS 必须处于运行状态。 > 如果 CSS 没有启动,即使是单实例也无法通过正常的 `startup` 启动,因为 Oracle 需要 CSS 来协调资源。 #### 2. `ORA-01565: error in identifying file '+DATA/orcl/spfileorcl.ora'` 这说明 Oracle 找不到 SPFILE(服务器参数文件),路径是 ASM 中的 `+DATA/orcl/spfileorcl.ora`。但根本原因可能是:**ASM 实例没有运行**,或者 **CSS 没有启动导致无法访问 ASM 磁盘组**。 #### 3. `starting Oracle instance without parameter file for retrieval of spfile` RMAN 尝试绕过 SPFILE 启动一个最小实例来恢复 SPFILE,但由于 CSS 不可用,连这种“急救”模式也失败了。 --- ### ✅ 解决方案 你需要确保 **CSS 服务正在运行**。以下是具体步骤: --- ### ✅ 步骤 1:检查并启动 CSS 服务(使用 `crsctl`) 以具有权限的操作系统用户(通常是 `grid` 用户)登录服务器,执行以下命令: ```bash # 切换到 grid 用户(假设你是 root 或 oracle 用户) su - grid # 检查 CSS 服务状态 crsctl check css # 如果未运行,则启动 CSS crsctl start resource ora.cssd ``` > ⚠️ 注意:在 Oracle Restart(单机 ASM)或 RAC 环境中,CSS 是由 `ohasd` 进程启动的。通常重启服务器后会自动启动。如果没启动,手动启动即可。 --- ### ✅ 步骤 2:确认 ASM 实例是否运行(如果是使用 ASM 存储 SPFILE) SPFILE 在 `+DATA/orcl/spfileorcl.ora`,说明它存储在 ASM 中。因此必须有一个正在运行的 **ASM 实例**才能读取该文件。 ```bash # 查看 ASM 实例状态 crsctl status resource ora.asm # 如果没运行,尝试启动 crsctl start resource ora.asm ``` 或者使用 SQL*Plus 连接 ASM 实例: ```bash sqlplus / as sysasm SQL> select instance_name, status from v$instance; ``` 如果 ASM 实例未运行,请先启动它。 --- ### ✅ 步骤 3:尝试从 RMAN 启动 nomount(现在应该可以成功) 一旦 CSS 和 ASM 都运行正常,再回到 RMAN: ```bash rman target / RMAN> startup nomount; ``` 此时应能成功启动实例(即使没有 SPFILE,也可以临时启动用于恢复)。 --- ### ✅ 步骤 4:从备份恢复 SPFILE(如果需要) 如果你怀疑 SPFILE 丢失或损坏,可以从自动备份中恢复: ```bash RMAN> restore spfile from autobackup; ``` > 需要有之前的 SPFILE 自动备份(如使用 `CONFIGURE CONTROLFILE AUTOBACKUP ON;`) 恢复后,重新启动: ```bash RMAN> shutdown abort; RMAN> startup; ``` --- ### ✅ 补充:若无 SPFILE 备份,可创建临时 PFILE 启动 你可以创建一个最简化的文本型初始化参数文件(PFILE)来启动实例: ```bash # 使用编辑器创建一个临时 pfile vi /tmp/init_temp.ora ``` 内容示例(根据你的实际情况调整): ```ini orcl.__db_cache_size=100M orcl.__shared_pool_size=80M *.db_name='orcl' *.memory_target=500M *.control_files='+DATA/orcl/controlfile/current.256.123456789' *.cluster_database=false ``` 然后在 RMAN 中: ```bash RMAN> startup nomount pfile='/tmp/init_temp.ora'; ``` 之后可以用此实例去恢复真正的 SPFILE 或控制文件。 --- ## ✅ 总结解决流程 | 步骤 | 操作 | |------|------| | 1 | 使用 `grid` 用户运行 `crsctl check css` 检查 CSS 状态 | | 2 | 若未运行,执行 `crsctl start resource ora.cssd` 启动 CSS | | 3 | 检查 ASM 实例是否运行:`crsctl status resource ora.asm` | | 4 | 如未运行,启动 ASM 实例 | | 5 | 回到 RMAN 执行 `startup nomount` | | 6 | 成功后恢复 SPFILE 或控制文件 | --- ### ❗ 常见误区 - 认为“我只是单实例”,就不需要关注 CSS —— **错!** 只要用了 Oracle Restart 或 ASM,CSS 就是必需的。 - 直接用 `oracle` 用户操作 ASM 资源 —— 应使用 `grid` 用户进行集群资源管理。 --- ### ✅ 验证命令汇总 ```bash # 以 grid 用户执行: crsctl check css crsctl check asm crsctl status resource ora.cssd crsctl status resource ora.asm # 查看所有 CRS 资源状态 crsctl status resource -t ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值