DBCA建库找不到ASM磁盘一例

本文介绍了解决Oracle RAC环境下DBCA工具在特定节点上无法创建数据库的问题。通过排查权限设置和日志分析,最终定位到GRID_HOME/bin目录下oracle文件权限错误导致oracle用户无法访问ASM磁盘组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 环境信息
    red hat linux64
    gi 11.2.0.4
    oracle 11.2.0.4
  • 问题现象
    安装完gi软件及oralce database软件之后,通过dbca用户界面建立数据库,发现在node1上数据库能正常建立,在node2上不能正常建立数据库,dbca建库过程在node2上报错
    如图:
    这里写图片描述

  • 查看node1和node2上磁盘组状态

node1:
su - grid
SQL> select name,state from v$asm_diskgroup;

NAME                           STATE
------------------------------ -----------
SYSDG                          MOUNTED
DATADG                         MOUNTED
node2:
SQL> select name,state from v$asm_diskgroup;

NAME                           STATE
------------------------------ -----------
SYSDG                          MOUNTED
DATADG                         MOUNTED
通过asmcmd命令查看,能正常看到asm磁盘组里面的文件 
  • 通过截图报错查看dbca日志和所示的oraagent_oracle.log
    dbca日志
    /app/oracle/cfgtoollogs/dbca/RAC
    /app/grid/11.2.0/log/rac2/agent/crsd/oraagent_oracle
[Thread-200] [ 2016-09-07 16:29:32.180 CST ] [DatabaseImpl.crsResource:3608]  calling parent's crsResource
[Thread-200] [ 2016-09-07 16:29:32.931 CST ] [PostDBCreationStep.executeImpl:885]  Starting Database HA Resource
[Thread-200] [ 2016-09-07 16:30:24.426 CST ] [CRSNative.internalStartResource:389]  Failed to start resource: Name: ora.rac.db, node: null, filter: null, msg CRS-5017: The resource action "ora.rac.db start" encountered the following error:
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATADG/RAC/spfileRAC.ora'
ORA-17503: ksfdopn:2 Failed to open file +DATADG/RAC/spfileRAC.ora
ORA-01034: ORACLE not available
ORA-27123: unable to attach to shared memory segment
Linux-x86_64 Error: 13: Permission denied
Additional information: 26
Additional information: 196613
. For details refer to "(:CLSN00107:)" in "/app/grid/11.2.0/log/rac2/agent/crsd/oraagent_oracle/oraagent_oracle.log".

CRS-2674: Start of 'ora.rac.db' on 'rac2' failed
CRS-2632: There are no more servers to try to place resource 'ora.rac.db' on that would satisfy its placement policy
[Thread-200] [ 2016-09-07 16:30:24.427 CST ] [PostDBCreationStep.executeImpl:893]  Exception while Starting with HA Database Resource PRCR-1079 : Failed to start resource ora.rac.db
CRS-5017: The resource action "ora.rac.db start" encountered the following error:
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATADG/RAC/spfileRAC.ora'   提示无法访问spfile文件
ORA-17503: ksfdopn:2 Failed to open file +DATADG/RAC/spfileRAC.ora
ORA-01034: ORACLE not available
ORA-27123: unable to attach to shared memory segment
Linux-x86_64 Error: 13: Permission denied
Additional information: 26
Additional information: 196613
. For details refer to "(:CLSN00107:)" in "/app/grid/11.2.0/log/rac2/agent/crsd/oraagent_oracle/oraagent_oracle.log".

CRS-2674: Start of 'ora.rac.db' on 'rac2' failed

日志提示无法访问spfile文件,但是能通过grid用户在磁盘组里发现这些文件,诡异。
那么思考原因:
dbca建立数据库是oracle用户操作,而grid用户是管理磁盘组的,明显现象是,在节点2上oracle用户无法读取或访问asm磁盘组的文件,所以才可能出现此问题

  • 进一步验证此想法
    在node2上尝试dbca建立数据库,发现选择数据文件存放路径时,找不到asm磁盘组+DATADG
    这里写图片描述

  • 至此,问题明确,oracle无法发现asm磁盘组
    查看两节点的oracle用户权限:

node1 :
id oracle
uid=501(oracle) gid=5001(oinstall) 组=5001(oinstall),5002(dba),5003(oper),5006(asmdba)
node2:
uid=501(oracle) gid=5001(oinstall) 组=5001(oinstall),5002(dba),5003(oper),5006(asmdba)

查看GRID_HOME和ORACLE_HOME的bin目录下oracle文件的权限:

node1:
cd $GRID_HOME/bin
ls -l oracle
-rwsr-s--x 1 grid oinstall 209914519 97 14:40 oracle   文件权限正确
node2:
ls -lrt oralce
-rwxr-x--x 1 grid oinstall 209914519 97 14:42 oracle   文件权限错误
oracle用户:
cd $ORACLE_HOME/bin
ls -l oracle
node1:
-rwsr-s--x 1 oracle asmadmin 239626689 97 15:56 oracle  正确
node2:
-rwsr-s--x 1 oracle asmadmin 239626689 97 16:04 oracle  正确

问题明确:
在node2的,GRID_HOME/bin目录下,oracle文件权限错误
修改:
chmod +s oracle
重新回到DBCA建库界面继续执行,则会成功发现ASM磁盘组,并成功建库。

包括详细的安装过程和每一步的说明,以及安装注意事项 一、 说明 2 二、 安装前 2 (一) 相关知识点 2 1. RAC概述 2 2. GI(Grid Infrastructure) 4 (二) 安装前环境准备 4 1. 安装步骤 4 2. 虚拟机硬件环境准备 5 3. 安装包下载 6 4. 安装部署时间控制 6 5. 安装过程应注意的地方 7 (三) 生产环境安装部署注意事项: 7 三、 实验环境配置 7 (一) 虚拟环境配置 7 (二) 配置OS 11 1) 关闭防火墙 11 2) 修改host文件或配置DNS解释SCANIP(配置过程如下) 11 3) 配置节点互信(所有节点的基于用户oracle,grid的互信) 12 4) 创组和用户,加权限 13 5) 用户环境变量配置 13 6) 创目录,给予目录权限   14 7) 配置系统文件 14 a) 配置oracle、grid用户的shell限制 14 b) 修改/etc/pam.d/login配置文件 15 c) 修改内核配置文件/etc/sysctl.conf 15 d) 修改/etc/sysctl.conf过程中报错处理: 15 8) 配置共享磁盘 (在一个节点执行即可) 16 a) 分区 16 b) 配置UDEV绑定磁盘分区 17 9) 安装GI、Oracle、等需要的包 17 四、 安装配置cluster集群软件及ASM 19 (一) 安装前检查 19 (二) 开始安装GI 21 (三) 检查安装结果 57 (四) 安装数据库oracle 软件、创ASM磁盘组 61 五、 集群数据库的创 79 六、 安装后任务 96 (一) 官方议的两个安装后置任务 96 (二) 删除GI、数据库(具体参考另一文档) 97 (三) 软件下载 98 (四) 参考 98
<think>嗯,用户想了解OracleDBCA工具的使用指南。首先,我需要回忆一下DBCA的基本功能,它是用来创、配置和管理Oracle数据库的图形化工具。接下来,用户可能需要详细的步骤说明,比如如何启动DBCA,创数据库的流程,以及常见问题处理。 然后,用户的问题中提到安装过程中卡在“starting Oracle Database Configuration Assistant”,所以需要包含相关的故障排除部分。参考引用中的资料,特别是引用[4]提到可能有后台弹出窗口被忽略,导致安装失败。这一点很重要,应该提醒用户在安装时注意所有弹出的窗口。 另外,用户可能对命令行使用DBCA感兴趣,比如静默安装,这在自动化部署中很有用。需要解释如何通过响应文件进行配置,并给出示例命令。 还要考虑用户的实际应用场景,比如他们可能是DBA或开发人员,需要创测试环境或生产数据库。因此,使用指南需要涵盖不同场景下的操作步骤,以及最佳实践,比如定期备份和参数调整。 最后,生成相关问题时,要覆盖用户可能进一步询问的方向,比如性能优化、错误代码解决、与手动创数据库的对比,以及如何迁移数据库。这些问题可以帮助用户更全面地理解DBCA的使用和潜在问题。</think>### Oracle Database Configuration Assistant (DBCA) 使用指南 #### 一、DBCA 工具概述 Oracle Database Configuration Assistant (DBCA) 是Oracle提供的图形化工具,用于创、配置和删除数据库,也可管理数据库模板。其核心功能包括: -数据库 - 配置现有数据库 - 删除数据库 - 管理数据库模板[^1] --- #### 二、DBCA 操作流程 ##### 1. 启动 DBCA - **命令行启动**(适用于Linux/Unix): ```bash dbca ``` - **Windows环境**:通过开始菜单选择 `Oracle > Configuration and Migration Tools > Database Configuration Assistant`[^1] ##### 2. 创数据库步骤 1. **选择操作类型** ![选择“创数据库”](https://example.com/dbca-step1.png) 默认选项为创数据库,适用于标准部署。 2. **配置数据库模板** - 通用用途模板(General Purpose) - 数据仓模板(Data Warehouse) - 自定义数据库(Custom Database) 例如,选择通用模板时,系统自动包含基础组件如`OLTP`支持[^1]。 3. **设置数据库标识** - 全局数据库名:`orcl.example.com` - SID:`orcl` $$ \text{SID命名规则:长度≤8字符,字母开头} $$ 4. **配置存储选项** - 文件系统存储(默认) - ASM存储(需预先配置ASM实例) 5. **指定快速恢复区(Fast Recovery Area)** 议分配独立磁盘空间,例如: ```plaintext /u01/app/oracle/fast_recovery_area ``` 6. **配置网络与监听器** 需确保监听器已启动(可通过`lsnrctl status`验证)[^4]。 --- #### 三、常见问题与解决方法 ##### 1. 安装卡在“Starting Oracle Database Configuration Assistant” - **现象**:安装进度停滞在88%或类似阶段 - **原因**:后台存在未处理的弹出窗口(如密码复杂度校验) - **解决方案**: 1. 切换至安装界面检查隐藏弹窗 2. 若已卡死,需终止进程并清理残留文件后重试 3. 检查日志:`$ORACLE_BASE/cfgtoollogs/dbca/<时间戳>.log` ##### 2. 错误代码 [INS-20802] - **触发场景**:权限不足或环境变量配置错误[^2][^3] - **修复步骤**: ```bash # 检查用户权限 id oracle # 验证环境变量 echo $ORACLE_HOME ``` --- #### 四、高级功能:命令行模式 通过响应文件实现静默安装: ```bash dbca -silent -createDatabase -responseFile /path/to/dbca.rsp ``` **响应文件示例**: ```properties gdbName=orcl sid=orcl templateName=General_Purpose.dbc sysPassword=Oracle123 systemPassword=Oracle123 ``` --- #### 五、最佳实践 1. **模板复用**:将已验证的数据库配置保存为模板,供后续快速部署 2. **参数调优**:根据硬件资源调整内存分配(`MEMORY_TARGET`) 3. **备份策略**:定期导出模板(`dbca -generateScripts`) ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值