原文地址:http://blog.itpub.net/28939273/viewspace-1084025/
ASM磁盘无法识别几种现象:
1) gi家目录或者其子目录权限错误
2)asm磁盘的权限错误
3)asm实例未启动或者asm磁盘组没有mount上
4)asm磁盘组资源没有在线
5)oracle用户的权限错误
6)oracle($ORACLE_HOME/bin)可执行文件的权限错误
OK,那我就按照上面的分析结果进行逐一排查:
1) gi家目录或者其子目录权限错误
[root@rac1 ~]# ls -ld
/u01/app/11.2.0/grid/
drwxr-x--- 66 root oinstall 4096 Apr 19 01:36
/u02/app/11.2.0/grid/
我先简单查看了GI的家目录权限,这是正常的。这里想要提醒大家,有些DBA有意无意中看到这样的目录权限,发现所属主是root,以为出了问题,理所应当地通过命令去更改,如果只更改该目录权限问题也不大,回退方法很简单,但一旦加上-R参数递归方式把子目录、子文件的权限一并更改,那故障就发生了。所以,大家在操作的时候不要盲目去做没有把握的事情,掌握每个操作后面的原理以及其带来的后果,以至于充分准备好回退方法.
有次就无意-R更改了整个目录权限,因此导致无法识别asm磁盘组。
按照正常RAC对应更改目录权限,还是无法识别,主要问题如下:
[root@rac01 ~]# find / -name oracle
查看如下2个路径oracle文件权限
/u01/app/oracle/11.2.0/db_1/bin/oracle
/u01/app/grid/11.2.0/bin/oracle
[root@rac01 bin]# ls -ltr oracle
-rwsr-s--x 1 oracle asmadmin 232399431 Feb 19 08:10 oracle/u01/app/grid/11.2.0/bin/oracle
[root@rac01 bin]# ls -ltr oracle
-rwsr-s--x 1 grid oinstall 203974257 Feb 19 07:28 oracle
[root@rac01 bin]# ls -ltr oracle
-rwsr-s--x 1 grid oinstall 203974257 Feb 19 07:28 oracle
注意这两个oracle文件的权限,要如上所示
2)
asm磁盘的权限错误
[root@rac1 ~]# ls -l /dev/oracleasm/disks/
total
0
brw-rw---- 1 grid asmadmin 8, 17 Apr 19 01:22 ASMDISK1
brw-rw---- 1 grid
asmadmin 8, 33 Apr 19 01:22 ASMDISK2
如果发现权限不对,通过如下命令修改:
[root@rac1 ~]#
oracleasm configure -I
或者
[root@rac1 ~]# /etc/init.d/oracleasm
configure
修改之后查看:
[root@rac1 ~]# oracleasm
configure
ORACLEASM_ENABLED=true
ORACLEASM_UID=grid
ORACLEASM_GID=asmadmin
ORACLEASM_SCANBOOT=true
ORACLEASM_SCANORDER=""
ORACLEASM_SCANEXCLUDE=""
3)
asm实例未启动或者asm磁盘组没有mount上
4) asm磁盘组资源没有在线:
[grid@rac1 ~]$ crsctl stat res
–t
---------------------------------------------------------------------
NAME
TARGET STATE SERVER
STATE_DETAILS
--------------------------------------------------------------------------------
Local
Resources
---------------------------------------------------------------------
ora.DATA.dg
ONLINE
ONLINE rac1
ora.FLASH.dg
ONLINE ONLINE rac1
ora.GRID.dg
ONLINE
ONLINE rac1
ora.LISTENER.lsnr
ONLINE ONLINE rac1
ora.asm
ONLINE
ONLINE rac1 Started
ora.ons
OFFLINE OFFLINE
rac1
---------------------------------------------------------------------
Cluster
Resources
---------------------------------------------------------------------
ora.cssd
1
ONLINE ONLINE rac1
ora.diskmon
1 OFFLINE OFFLINE
ora.evmd
1 ONLINE
ONLINE rac1
5) oracle用户的权限错误
[root@rac1 ~]# id oracle
uid=1101(oracle)
gid=1000(oinstall)
groups=1000(oinstall),1300(dba),1301(oper),1201(asmdba)
oracle用户需要加入到asmdba组,如果发现没有加入,进行如下操作:
[root@rac1 ~]# gpasswd -a oracle asmdba
Adding user oracle to group asmdba
6)
oracle($ORACLE_HOME/bin)可执行文件的权限错误
[root@rac1 ~]# su - oracle
[oracle@rac1 ~]$ cd $ORACLE_HOME/bin
[oracle@rac1 bin]$ ls -l oracle
-rwsr-s--x 1 oracle oinstall 232399473 Apr 19 07:04 oracle
oracle可执行文件的权限不正确:
[root@rac1 ~]# cd
/u01/app/oracle/product/11.2.0/dbhome_1/bin/
[root@rac1 bin]# chown oracle.asmadmin oracle
[root@rac1 bin]# ls -l oracle
-rwxr-x--x 1 oracle asmadmin 232399473 Apr 19 07:04 oracle
[root@rac1 bin]# chmod +s oracle
[root@rac1 bin]# ls -l oracle
-rwsr-s--x 1 oracle asmadmin 232399473 Apr 19 07:04 oracle