(一) 前言: 通过vmware workstation 走iscsi协议,安装RAC 集群架构,DBCA 时不能识别ASM 共享存储(按理来说这一版都是权限的问题)。同时,本想通过RMAN 做单实例 -- 迁移 --RAC, 单在创建ASM共享存储spfile参数文件时,一直报错,但是涉及的crs 服务,gri
(一) 前言:
通过vmware workstation 走iscsi协议,安装RAC 集群架构,DBCA 时不能识别ASM 共享存储(按理来说这一版都是权限的问题)。同时,本想通过RMAN 做单实例 --> 迁移 -->RAC, 单在创建ASM共享存储spfile参数文件时,一直报错,但是涉及的crs 服务,grid,oracle 权限都存在。
(二) 报错信息:
SQL> create spfile='+DATA/DOMINIC/PARAMETERFILE/spfiledominic.ora' from pfile='/u01/soft/spfile_5_04';
create spfile='+DATA/DOMINIC/PARAMETERFILE/spfiledominic.ora' from pfile='/u01/soft/spfile_5_04'
*
ERROR at line 1:
ORA-17502: ksfdcre:4 Failed to create file
+DATA/DOMINIC/PARAMETERFILE/spfiledominic.ora
ORA-01017: invalid username/password; logon denied
---这里,其实 只有真正的spfile参数放在ASM存储里,其他节点RAC1 ....RACn 都只是一个地址的映射。
当权限组正常的话,以上命令是可以执行,同时各节点在$ORACLE_HOME/dbs/initORACLE_SID.Z喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcmEgCjxicj4KCiBlY2hvICZxdW90O1NQRklMRT0="+DATA/ANQING/PARAMETERFILE/spfildominic.ora'" > /u01/app/oracle/product/11.2/db_1/dbs/initdominic1.ora
(三) 故障权限排查:
oracle 家目录bin下权限,及所属组
[oracle@dominic3 ~]$ cd /u01/app/oracle/product/11.2/dbhome_1/bin/
[oracle@dominic3 bin]$ ll oracle
-rwxrwxr-x 1 oracle asmadmin 239627031 May 17 17:32 oracle ---注意这里Oracle
权限,组, 路径!
grid 家目录bin下权限,及所属组
[oracle@dominic3 bin]$ cd /u01/app/11.2/grid/bin/
[oracle@dominic3 bin]$ ll oracle
-rwsrwsr-x 1 grid oinstall 209914869 May 17 15:58 oracle ---注意这里Oracle
权限,组, 路径!
[root@dominic3 ~]# ls /dev/oracleasm/disks/* -l
brw-rw---- 1 grid asmadmin 8, 17 May 27 15:37 /dev/oracleasm/disks/DATA01
brw-rw---- 1 grid asmadmin 8, 81 May 27 15:37 /dev/oracleasm/disks/DATA02
brw-rw---- 1 grid asmadmin 8, 97 May 27 15:37 /dev/oracleasm/disks/LOG01
brw-rw---- 1 grid asmadmin 8, 65 May 27 15:37 /dev/oracleasm/disks/LOG02
brw-rw---- 1 grid asmadmin 8, 113 May 27 15:37 /dev/oracleasm/disks/OCR01
brw-rw---- 1 grid asmadmin 8, 33 May 27 15:37 /dev/oracleasm/disks/OCR02
brw-rw---- 1 grid asmadmin 8, 49 May 27 15:37 /dev/oracleasm/disks/OCR03
[root@dominic3 ~]# su - grid
[grid@dominic3 ~]$ sqlplus / as sysasm
SQL> select GROUP_NUMBER,DISK_NUMBER,MOUNT_STATUS,HEADER_STATUS,MODE_STATUS,STATE,PATH from v$asm_disk;
SQL> /
2 0 CACHED MEMBER ONLINE NORMAL ORCL:DATA01
2 1 CACHED MEMBER ONLINE NORMAL ORCL:DATA02
3 0 CACHED MEMBER ONLINE NORMAL ORCL:LOG01
3 1 CACHED MEMBER ONLINE NORMAL ORCL:LOG02
1 0 CACHED MEMBER ONLINE NORMAL ORCL:OCR01
1 1 CACHED MEMBER ONLINE NORMAL ORCL:OCR02
1 2 CACHED MEMBER ONLINE NORMAL ORCL:OCR03
我把Oracle 及时添加到asmadmin 组也是这样
[grid@dominic3 ~]$ id oracle
uid=1101(oracle) gid=1000(oinstall) groups=1000(oinstall),1200(asmadmin),1201(asmdba),1300(dba),1301(oper)
[grid@dominic3 ~]$ id grid
uid=1100(grid) gid=1000(oinstall) groups=1000(oinstall),1200(asmadmin),1201(asmdba),1202(asmoper)
-- grid 需要加入DBA 权限组,
ASMDBA GRID,ORACLE ASM的SYSDBA OSDBA FOR ASM
ASMADMIN GRID
SYSASM OSASM
ASMOPER GRID ASM的SYSOPER OSOPER FOR ASM
最后的结果是: ASMDBA, ASMOPER, ASMADMIN 在创建grid 用户时,权限组设置颠倒所致。