12c dbca CRS-2674: Start of 'ora.orcl.db' on 'rac1' failed ORA-01017: invalid username/password; log

本文介绍了解决DBCA在创建数据库过程中遇到的CRS-2674及ORA-01017错误的方法。首先需要将grid用户添加到OSDBA组,然后重新编译数据库二进制文件,并检查relink.log文件确认没有错误。

dbca创建至64%,出现如下错误

CRS-2674: Start of 'ora.orcl.db' on 'rac1' failed
ORA-01017: invalid username/password; logon denied

这里写图片描述

解决方法:

01) Add the user "grid" to OSDBA group (for example, dba)
# id grid
uid=501(grid) gid=502(oinstall) groups=502(oinstall)
# usermod -a -G dba grid
# id grid
uid=501(grid) gid=502(oinstall) groups=502(oinstall),503(dba)
02) Recompile the DB binaries (execute as oracle user)
$ export ORACLE_BASE=/u01/app/oracle
$ export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
$ export PATH=$ORACLE_HOME/bin:$PATH
$ relink all
03) If there are no errors reported in $ORACLE_HOME/install/relink.log, then proceed with creating the database
$ dbca
你遇到的错误信息: ``` CRS-4535: Cannot communicate with Cluster Ready Services CRS-4000: Command Start failed, or completed with errors. ``` 表明你尝试通过 `crsctl start resource ora.cssd` 启动 Oracle 集群中的 CSSD(Cluster Synchronization Services Daemon)资源时,**无法与 CRS(Cluster Ready Services)通信**。这通常意味着 **Oracle 高可用服务(OHAS 或 CRS)本身没有运行**,或者集群基础设施存在严重问题。 --- ### ✅ 问题分析 - `ora.cssd` 是 Oracle RAC(Real Application Clusters)中非常核心的资源,负责节点间的同步和锁管理。 - 在正常情况下,`cssd` 是由 OHASD(Oracle High Availability Services Daemon)自动启动的,**不应该手动使用 `crsctl start resource` 去启动它**。 - 出现 `Cannot communicate with Cluster Ready Services` 的根本原因通常是: - CRS 没有启动(即 OHASD 未运行) - 集群进程崩溃或被关闭 - root 用户权限不足(应以 root 身份操作) - 集群件损坏或配置异常 - 网络问题导致节点间通信失败(如私网中断) --- ### ✅ 正确解决方案:启动整个集群栈(以 root 用户) 你应该以 **root 用户身份** 启动 OHASD,而不是以普通用户尝试启动单个资源。 #### 1. 切换到 root 用户并启动 OHASD ```bash # 切换到 root 用户 sudo su - root # 启动 OHASD(Oracle High Availability Services) /etc/init.d/ohasd start # 或者在较新版本中使用: initctl start oracle-ohasd # 或者使用 systemctl(如果系统是 systemd 管理) systemctl start ohasd ``` > ⚠️ 注意:具体命令取决于你的操作系统和 Oracle 版本(11g/12c/19c)。 #### 2. 使用 crsctl 检查 CRS 状态 ```bash # 切换回 grid 用户 su - grid # 查看 CRS 状态 crsctl check cluster crsctl check crs ``` 预期输出应为“online”或“active”。 #### 3. 如果 CRS 仍不响应,尝试重启整个集群件 ```bash # 以 root 执行 crsctl stop crs # 停止 CRS crsctl start crs # 启动 CRS(会自动启动 cssd、crsd、evmd 等) ``` 这将启动所有集群服务,包括 `ora.cssd`。 --- ### ✅ 补充检查项 1. **确认你是以正确的用户运行命令** - `crsctl start resource ...` 可能需要 root 权限,尤其是当 CRS 未运行时。 - `grid` 用户只能控制资源状态,但不能启动底层守护进程。 2. **查看日志定位问题** ```bash # OHASD 日志 $GRID_HOME/log/<hostname>/ohasd/ohasd.log # CRS 守护进程日志 $GRID_HOME/log/<hostname>/crsd/crsd.log ``` 查看是否有权限错误、网络故障或磁盘资源不可用等问题。 3. **确认集群是否已启用自启** ```bash crsctl config crs ``` 应该显示“enabled”。 4. **检查集群是否被禁止启动** ```bash crsctl get css disktimeout crsctl get css misscount ``` 如果这些值异常,可能导致节点驱逐或无法加入集群。 --- ### ✅ 不推荐的操作 ❌ **不要直接尝试启动 `ora.cssd` 资源**,尤其是在 CRS 未运行的情况下。 因为 `cssd` 依赖于 OHASD 和其他集群服务,单独启动它几乎不可能成功。 --- ### ✅ 总结步骤(建议顺序) ```bash # 1. 切换到 root sudo su - root # 2. 停止 CRS(如果部分运行) crsctl stop crs # 3. 启动 CRS crsctl start crs # 4. 切换回 grid 用户 su - grid # 5. 检查集群状态 crsctl check cluster crsctl check crs crsctl status resource -t ``` 此时 `ora.cssd` 应该已经自动启动。 --- ### ❓常见相关现象解释 | 错误 | 原因 | |------|------| | CRS-4535: Cannot communicate with CRS | OHASD 没有运行 | | CRS-4000: Command Start failed | 目标资源依赖的服务未就绪 | | `crsctl check crs` 提示 not active | OHASD 进程未启动 | ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值