当root.sh与ORA-15031相遇
近日处理一个Oracle Grid infrastructure(GI)安装的问题,在执行root.sh过程中失败,并显示下面错误:
1
2
3
4
5
6
7
8
9
|
Disk Group OCR creation failed with the following message:
ORA-15018: diskgroup cannot be created
ORA-15031: disk specification '/dev/vx/rdsk/dg_db01/lv_vote1' matches no disks <<<<<<<<<<<<<<<
ORA-15031: disk specification '/dev/vx/rdsk/dg_db01/lv_vote2' matches no disks
ORA-15031: disk specification '/dev/vx/rdsk/dg_db01/lv_vote3' matches no disks
Configuration of ASM ... failed
see asmca logs at /oracle/base/cfgtoollogs/asmca for details
Did not succssfully configure and start ASM at /oracle/product/11.2.0.4/grid_1/crs/install/crsconfig_lib.pm line 6468.
/oracle/product/11.2.0.4/grid_1/perl/bin/perl -I/oracle/product/11.2.0.4/grid_1/perl/lib -I/oracle/product/11.2.0.4/grid_1/crs/install /oracle/product/11.2.0.4/grid_1/crs/install/rootcrs.pl execution failed
|
错误ORA-15031的提示,还是很明显的,无法识别对应的voting磁盘,正常解决思路,就是检查磁盘是否正常挂载,权限是否正确等,需要逐项检查。在Metalink上搜索,这个错误一般都是在node2上执行root.sh会遇到,而node1都是正常的。大多是权限以及系统层面挂载出现问题。但是我这个问题,是在node1上执行root.sh就失败了。
开始各项分析检查:
1. 检查磁盘是否存在,权限是否正确,All Pass
1
2
3
4
|
#ls -lrt /dev/vx/rdsk/dg_db01
crw-rw ---- 1 grid asmadmin 40,60000 Feb 12 10:51 lv_vote1
crw-rw ---- 1 grid asmadmin 40,60001 Feb 12 10:52 lv_vote2
crw-rw ---- 1 grid asmadmin 40,60002 Feb 12 10:52 lv_vote3
|
2. 检查asm_diskstring设置
1
2
3
4
|
SQL> show parameter asm_diskstring
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
asm_diskstring string /dev/vx/rdsk/dg_db01
|
3. 并使用kfod来查看,是否能扫描到对应的磁盘,也正常
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
kfod asm_diskstring= '/dev/vx/rdsk/dg_db01/lv_*' disks= all
--------------------------------------------------------------------------------
Disk Size Path User Group
================================================================================
1: 327680 Mb /dev/vx/rdsk/dg_db01/lv_data01 grid asmadmin
2: 327680 Mb /dev/vx/rdsk/dg_db01/lv_data02 grid asmadmin
3: 327680 Mb /dev/vx/rdsk/dg_db01/lv_data03 grid asmadmin
4: 112910 Mb /dev/vx/rdsk/dg_db01/lv_data04 grid asmadmin
5: 1024 Mb /dev/vx/rdsk/dg_db01/lv_vote1 grid asmadmin
6: 1024 Mb /dev/vx/rdsk/dg_db01/lv_vote2 grid asmadmin
7: 1024 Mb /dev/vx/rdsk/dg_db01/lv_vote3 grid asmadmin
--------------------------------------------------------------------------------
ORACLE_SID ORACLE_HOME
================================================================================
+ASM1 /oracle/product/11.2.0.4/grid_1
grid@HAZZ-NRMS-RESDB01:/home/grid>
|
4. 至此,我怀疑是asm_diskstring设置的不够准确,将其更改为
1
2
3
4
|
SQL> show parameter asm_diskstring
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
asm_diskstring string /dev/vx/rdsk/dg_db01/lv_*
|
但是问题依旧没有解决,
5. 检查集群安装环境,也没有发现问题
1
2
|
$ ./runcluvfy.sh stage -pre crsinst -n node1,node2 -verbose
$ ./runcluvfy.sh comp ssa -n all -verbose
|
6. 操作系统日志,没有发现错误
1
|
IBM: /bin/errpt -a > messages. out
|
至此,可以确认,根据oracle的安装文档,目前的磁盘权限完全符合安装条件,在GI的图形化安装过程,也是可以看见ASM disk的,但是在root.sh执行过程中,就是无法通过。
后通过Metalink查询到下面文章
ASM Is Not Detecting Raw Devices Or Regular Raw Devices On AIX (Doc ID 1174604.1)
根据文档描述:
EMC存储,使用多路径,可能会遇到这个问题,而我的存储确实使用的EMC和多路径。
好吧,按照这个文档的Solution,测试一下
1
2
3
4
5
|
Please attempt the next action plan on the mount point which contains the ASM Oracle Home:
1) Dismount the filesystem which contains the ASM Oracle Home.
2) Change the ownership of the mount point to oracle : dba
3) Remount the filesystem
4) The EMC PowerPath raw devices or regular raw devices are now being discovered.
|
我的执行步骤如下:
1
2
3
4
5
|
1、dismount /u01/oracle
2、chown -R oracle:oinstall /u01/oracle
chmod 775 /u01/oracle
3、mount /u01/oracle
4、再次执行root.sh,成功
|
说真的,我很难理解,为什么mount路径的权限,会影响到ASM disk的无法识别.
根据文档1174604.1中提及的Bug 9976459 : ASM DISK NOT GETTING DISCOVERED,其中有这样一段解释
1
2
3
4
|
When a file system is mounted over a directory, the permissions of the root directory of the mounted file system takes precedence over the permissions of the mount point.
A common problem is failure of the pwd command. Without search permission in the mounted-over directory, the pwd command returns the following message:
pwd: Permission denied
This problem can be avoided by always setting the permissions of the mounted-over directory to at least 111.
|
最终,根据上面的描述,google到了IBM的解释:
http://www-01.ibm.com/support/knowledgecenter/ssw_aix_71/com.ibm.aix.osdevice/mountpoint.htm
安装点
安装点是一个目录或文件,可在该处访问新文件系统、目录或文件。要安装文件系统或目录,安装点必须为一个目录;要安装文件,那么安装点必须为文件。
通常,文件系统、目录或文件安装在空安装点上,但这不是必需的。如果作为安装点的文件或目录包含任何数据,那么另一个文件或目录在该安装点进行安装时,该数据不可访问。实际上,已安装的文件或目录覆盖了以前在该目录中的内容。一旦撤销在初始目录或文件上的安装,该目录或文件就重新可访问。
在目录上安装文件系统时,已安装文件系统的根目录许可权优先于安装点的许可权。有一个例外是安装目录中的 ..(点点)父目录条目。为了操作系统能够访问新文件系统,安装点父目录信息必须可用。
例如,如果当前工作目录是 /home/frank,那么命令 cd .. 将工作目录更改至 /home。 如果 /home/frank 目录是已安装的文件系统的根,那么为了使 cd .. 命令成功,操作系统必须在 /home/frank 目录中找到父目录信息。
对于需要父目录信息才能成功的任何命令,用户必须具有在安装目录中的搜索许可权。授予对安装目录的搜索许可权失败可能会导致不可预测的结果,尤其是因为安装目录许可权是不可见的。常见问题是 pwd 命令失败。如果没有对安装目录的搜索许可权,pwd 命令将返回此消息:
pwd:许可权被拒绝
通过始终将安装目录的许可权至少设置为 111 可避免此问题。
至此,问题已经解决,由于mount点的权限问题,会导致ASM disk识别的失败。
哎!!!神奇的经历!!!
当root.sh与ORA-15031相遇相关推荐
- Oracle 11g ora 15018,oracle 11gR2 RAC root.sh 错误 ORA-15072 ORA-15018
Oracle 11gR2 RAC安装Clusterware结束, 在第二个节点执行root.sh脚本的是报如下错误: DiskGroup DATA1 creation failed with the ...
- 关于 运行root.sh 时出错误Timed out waiting for the CRS stack to start.的解决
Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. Adding daemon to inittab C ...
- 苹果双系统运行oracle失败,oracle 11gR2 RAC for linux x86_64 grid运行root.sh 失败问题处理...
昨天一个朋友问到我,在oracle 11gR2 RAC for linux x86_64安装过程中,grid用户运行root.sh在第一节点可以成功,但在第二节点不成功,报错如下: CRS-2674: ...
- How to recover from root.sh on 11.2 Grid Infrastructure Failed
从10g的clusterware到11g Release2的Grid Infrastructure,Oracle往RAC这个框架里塞进了太多东西.虽然照着Step by Step Installati ...
- oracle9i rac for aix,oracle 11gR2 rac for aix 第二个节点运行root.sh不成功问题处理
今天帮客户规划安装一套11gR2 rac for aix 数据库,在安装grid集群软件时,第一个节点运行 root.sh成功,运行第二个节点root.sh不成功,主要原因是忘记更改两个节点磁盘的 r ...
- 安装oracle 19c rac报错:2节点执行root.sh asm实例启动失败
安装oracle 19c rac报错:2节点执行root.sh asm实例启动失败 背景 解决过程 查看lmon trc 查看mos 真的是网络的问题 haip 禁用haip 安装好的环境禁用haip ...
- Oracle RAC 第二节点 root.sh 报错 Timed out waiting for the CRS stack to start
在VBox 上安装11.2.0.1的RAC. 这里打算安装11.2.0.1是因为从11.2.0.2以后的版本对public 和private 网卡网段区分很严格,这个网卡必须配置在不同的网段. 而在1 ...
- oracle修改c root,从新发现Oracle太美之root.sh
重新发现Oracle太美之root.sh 如果你执行下以下命令基本上会在Oracle软件目录下会发现两个root.sh的脚本 [oracle@rh64 Templates]$ find /u01/ - ...
- oracle 11gR2 RAC root.sh 错误 ORA-15072 ORA-15018
Oracle 11gR2 RAC 安装Clusterware 结束, 在第二个节点执行root.sh脚本的是报如下错误: DiskGroup DATA1 creation failed with t ...
最新文章
- 高亮提示、聚焦控件并滚动到浏览器中干好可以查看到该控件的位置
- 编写音乐播放器的一些感想
- android Run模式也会出现Waiting for debugger的解决方法
- 对文本框只允许输入数字
- 成功解决ValueError: (‘Unknown transform primitive years. ‘, ‘Call ft.primitives.list_primitives() to get
- LeetCode 4. Median of Two Sorted Arrays
- 8999元起!vivo X Fold折叠屏旗舰今日首销:采用航天级浮翼式铰链
- UI实用素材|登录和个人资料界面模板
- Oracle收购后的Mysql目标市场
- 更新学生的成绩C语言,学生成绩管理系统C语言代码实现.pdf
- 计算机组成原理 最新教材,《计算机组成原理》东南大学教材.pdf
- 安卓psp模拟器联机教程_让PSP带你回童年FC模拟器联机教程.doc
- Delphi 10.3 Rio实现FMX应用APP增加Android“应用程序快捷方式”
- 【C语言】关机程序的实现以及函数
- 【Python】使用python 画出一张机器猫doraemon
- word2vec和bert的基本使用方法
- TOJ 3015.Convert Kilometers to Miles
- 11月20日 如何在场景开启Debug,自定义AI任务,EQS,创建自己的环境任务,使用Pawn环境检测来检测周围的环境,让AI动作更顺滑(动画混合
- php 命格算法,命格是怎么个算法???
- 视频有黑边怎么办?如何裁剪视频画面的黑边?