共计 1075 个字符,预计需要花费 3 分钟才能阅读完成。
实验环境:
操作系统:RedHat Linux 6.4
数据库版本:Oracle 11.2.0.2.0
在使用 DBCA 创建 Oracle 数据库的时候,发现找不到 ASM 磁盘组:
错误排查:
1、执行:
/usr/sbin/oracleasm scandisks 和 /usr/sbin/oracleasm listdisks
查看执行结果, listdisk 可以正常的将磁盘组可显示出来.
2、切换到 grid 用户下 , 查看 ASM 实例是否启动,并执行查询
sqlplus / as sysdba
select group_number,path,mount_status,state from v$asm_disk;
select group_number,offline_disks,state from v$asm_diskgroup;
查看磁盘以及磁盘组及其磁盘状态都正常(正常状态为 mount);
3、用户组判断
id oracle 和 id grid
查看 oracle 用户是否在 admdba 组里面
4、查看 oracle 用户和 grid 用户的 $ORACLE_HOME/bin/oracle 文件的权限
$ORACLE_HOME/bin/oracle 该文件的默认权限为 6751 权限,有个 s 权限,如果 s 权限消失,这时通过 OS 认证将不能登录到数据库;
经过对问题的逐一排查,终于找到了问题的所在:
执行 chmod +s oracle 解决问题
总结:
DBCA 建库找不到 ASM 磁盘的问题所在:
1. Incorrect permission setting for oracle user.
2. ASM instance was not started or diskgroups are not mounted.
3. The diskgroup resources are not online.
4. The permission setting for the asm devices are incorrect.
5. The oracle executable under /bin has incorrect permission settings.
6. the file system for grid home was mounted with option’nosuid’.
更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-05/143880.htm