在Oracle Linux 7.1中使用dbca为Oracle 18C RAC创建数据库时,找不到ASM磁盘组;而grid用户使用asmca却又能看到ASM磁盘组。

解决方法
1. 检查创建ASM磁盘设备的权限,正确的权限为grid:asmadmin,通过下面输出可知权限正确

[root@18c1~]#ls-lrt/dev/asm*brw-rw----1gridasmadmin8,16Mar1622:28/dev/asmdisk01brw-rw----1gridasmadmin8,32Mar1708:40/dev/asmdisk02[root@18c2~]#ls-lrt/dev/asm*brw-rw----1gridasmadmin8,32Mar1708:41/dev/asmdisk02brw-rw----1gridasmadmin8,16Mar1708:41/dev/asmdisk01

2.检查ASM实例是否启动

[grid@18c1~]$asmcmdlsdgStateTypeRebalSectorLogical_SectorBlockAUTotal_MBFree_MBReq_mir_free_MBUsable_file_MBOffline_disksVoting_filesNameMOUNTEDEXTERNN5125124096419430461440358680358680YCRS/MOUNTEDEXTERNN5125124096419430440960360360360360NDATA/[grid@18c2~]$asmcmdlsdgStateTypeRebalSectorLogical_SectorBlockAUTotal_MBFree_MBReq_mir_free_MBUsable_file_MBOffline_disksVoting_filesNameMOUNTEDEXTERNN5125124096419430461440358680358680YCRS/MOUNTEDEXTERNN5125124096419430440960360360360360NDATA/

3. 检查GRID_HOME/bin下oracle是否有s权限,如果没有需要添加s权限,通过下面的输出可知GRID_HOME/bin目录下的oracle是没有s权限的,这里需要添加

[root@18c1~]#ls-lrt/u01/app/oracle/18.0.0/db/bin/oracle-rwsr-s--x1oracleasmadmin437038067Mar1623:00/u01/app/oracle/18.0.0/db/bin/oracle[root@18c1~]#ls-lrt/u01/app/18.0.0/grid/bin/oracle-rwxr-x--x.1gridoinstall413877125Mar1619:10/u01/app/18.0.0/grid/bin/oracle[root@18c2/]#ls-lrt/u01/app/oracle/18.0.0/db/bin/oracle-rwsr-s--x1oracleoinstall437038067Mar1623:07/u01/app/oracle/18.0.0/db/bin/oracle[root@18c2/]#ls-lrt/u01/app/18.0.0/grid/bin/oracle-rwxr-x--x.1gridoinstall413877125Mar1619:30/u01/app/18.0.0/grid/bin/oracle[root@18c1~]#chmod+s/u01/app/18.0.0/grid/bin/oracle[root@18c1~]#ls-lrt/u01/app/18.0.0/grid/bin/oracle-rwsr-s--x.1gridoinstall413877125Mar1619:10/u01/app/18.0.0/grid/bin/oracle[root@18c2/]#chmod+s/u01/app/18.0.0/grid/bin/oracle[root@18c2/]#ls-lrt/u01/app/18.0.0/grid/bin/oracle-rwsr-s--x.1gridoinstall413877125Mar1619:30/u01/app/18.0.0/grid/bin/oracle

4.检查用户所有组

[root@18c1~]#idoracleuid=1001(oracle)gid=1011(oinstall)groups=1007(asmdba),1009(dba),1010(oper),1012(backupdba),1013(dgdba),1014(kmdba),1015(racdba),1011(oinstall)[root@18c1~]#idgriduid=1002(grid)gid=1011(oinstall)groups=1006(asmadmin),1007(asmdba),1008(asmoper),1009(dba),1011(oinstall)[root@18c1~]#gpasswd-aoracleasmadminAddinguseroracletogroupasmadmin[root@18c1~]#idoracleuid=1001(oracle)gid=1011(oinstall)groups=1006(asmadmin),1007(asmdba),1009(dba),1010(oper),1012(backupdba),1013(dgdba),1014(kmdba),1015(racdba),1011(oinstall)[root@18c2/]#idoracleuid=1001(oracle)gid=1011(oinstall)groups=1007(asmdba),1009(dba),1010(oper),1012(backupdba),1013(dgdba),1014(kmdba),1015(racdba),1011(oinstall)[root@18c2/]#idgriduid=1002(grid)gid=1011(oinstall)groups=1006(asmadmin),1007(asmdba),1008(asmoper),1009(dba),1011(oinstall)[root@18c2/]#gpasswd-aoracleasmadminAddinguseroracletogroupasmadmin[root@18c2/]#idoracleuid=1001(oracle)gid=1011(oinstall)groups=1006(asmadmin),1007(asmdba),1009(dba),1010(oper),1012(backupdba),1013(dgdba),1014(kmdba),1015(racdba),1011(oinstall)

再执行dbca创建数据库时能正确找到磁盘组