How to troubleshoot “ASM does not discover disks

2023-10-17 03:08

本文主要是介绍How to troubleshoot “ASM does not discover disks,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

How to troubleshoot ‘ASM does not discover disks’

FROM:http://www.dbaleet.org/how_to_troubleshoot_asm_does_not_discover_disks/

How to troubleshoot “ASM does not discover disks”

 

原文链接:http://www.dbaleet.org/how_to_troubleshoot_asm_does_not_discover_disks/

 

This scenario is  far from new in a conventional Oracle database environment, there are a couple of checklist need to be done if you came across this issue.

 

1. Check the ownership and permission of the asm candidate disks, it should be owned by the RDBMS software owner, eg: oracle:dba, and the permission of the candidate disks should be 660. You can check this by “ls -ltr” command on most cases.

 

2. If both ownership and permission are correct, you might have to read the disk manually by OS command “dd” under user “oracle”. Eg, if the name of the LUN to be used by asm is “/dev/asm/ocr1″ , you can read this disk by:

#su - oracle
$dd if=/dev/asm/ocr1 of=/dev/null bs=8192 count=10

If the output of the above command returns  something like “xxx in, xxx out” , then it is most likely that not be a problem of disk itself.

 

3. If you are using a multi-path technology, do not forget checking the certification information before making a plan. The certification has been documented well in MOS Oracle ASM and Multi-Pathing Technologies [ID 294869.1] . Be ware that IBM VPath is not supported on ASM, you should use alternative solution MPIO instead.

 

4. If you are using ‘ASMlib’, Firstly make sure that asmlib has been properly reconfigured, asmlib relied on specific Linux kernel versions, a mismatch between asmlib   and linux kernel   will lead a asmlib installation failure.  Secondly, please try to run

/etc/init.d/oracleasm scandisks
/etc/init.d/oracleasm listdisks

If there is no disk be found, do not rush into building ASM instance and ASM Diskgroup,  investigate the reason behind first would save your time.

 

5. Please also make sure that your asm_diskstring parameter is  properly set, ASM will only find the devices under the path which asm_diskstring provided with.

 

6.  Last but not least, kfod is a friend you can count on.

 

$export LD_LIBRARY_PATH=/tmp/OraInstall2013-09-12_06-25-45PM/ext/lib
$cd /tmp/OraInstall2013-09-12_06-25-45PM/ext/bin
$./kfod op=disks disks=all

if the above command returns nothing, try to trace this process:

$strace -f ./kfod op=disks disks=all

and investigate further by the output, it should cover all of the detail which is helpful for diagnostic this issue.

 

ON EXADATA:

Normaly, you can skip all of the 5 steps above, just take the 6th step should be enough if you griddisks are all online.

there are some dummy traces environment variables need to be set  before trace the kfod on some rare occasions.

$export CELLCLIENT_TRACE_LEVEL="all,4"
$export CELLCLIENT_AUTOFLUSH_LEVEL="all,4"
$xport CELLCLIENT_TRACE_INFO="autoflush_sync,on"
$cd /tmp/OraInstall2013-09-12_06-25-45PM/ext/bin
$./kfod op=disks disks=all
$strace -f ./kfod op=disks disks=all

 

We recently found that ASM instance and cellsrv should not be on the same node, otherwise, ASM instance won’t find any disks if cellsrv on the same node  is already up.

It seems ASM instance tend to be searching for a library called “libcell11.so”, if there is a cell version of this file and it is now up,  ASM instance would stop discovering the griddisks.

 

 

Juan Mosqueda contributes for the Exadata part of this article.

Thanks you Juan.

这篇关于How to troubleshoot “ASM does not discover disks的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/222521

相关文章

ASM 10G 基于RMAN 迁移

ASM 10G 基于RMAN 迁移 场景 单节点基于10G R2 的数据库,其数据文件及日志文件均存放在ASM 里,现在为业务需求,将此数据库做迁 移,迁移到另个机房,但是两个机房的网络是通畅的,为尽量减少数据的丢失及平稳迁移和经济实惠,迁 移时,数据库需停应用 工具 本次采用RMAN 的duplicate 命令来进行迁移,运用此命令简化复杂度; 一、源库和目标库的

maxcompute troubleshoot

1.maxcompute python 执行时报错 ValueError: level must be >= 0 原因:maxcompute只支持python2.7  好像目前不支持3.X以上

(转)GCC在C语言中内嵌汇编 asm __volatile__

原地址:https://www.cnblogs.com/c-road/p/6890615.html 在内嵌汇编中,可以将C语言表达式指定为汇编指令的操作数,而且不用去管如何将C语言表达式的值读入哪个寄存器,以及如何将计算结果写回C 变量,你只要告诉程序中C语言表达式与汇编指令操作数之间的对应关系即可, GCC会自动插入代码完成必要的操作。 1、简单的内嵌汇编 例: __asm__ __v

【rac asm扩容】在vmware workstation中配置集群(rac)的共享存储(磁盘)方法(流程)

在vmware workstation中配置集群(rac)要用的共享存储(磁盘)方法(流程) 注意:所有机器最好在关机状态下!!! 1)、添加一块新的硬盘 要点:立即分配所有磁盘空间。 要点:将共享的磁盘文件放到一个公共位置(可自定义,但最好不要放在虚拟机文件夹下),例如这里是放在F:\Virtual Machines\ShareDisks目录下(路径最好不要有中文!!

asm常用命令汇总

在Oracle 环境下,使用grid帐号执行 运行asmcmd进入asm命令模式,如: [grid@oradb-node1 ~]$ asmcmd ASMCMD>   ASMCMD> du //显示指定的ASM目录下ASM文件占用的所有磁盘空间 ASMCMD> ls -ls //列出ASM目录下的内容及其属性、磁盘空间占用 ASMCMD> pwd //查看当前路径 ASMCMD> c

WebAssembly 为什么比 asm.js 快?

WebAssembly 是为 Web 而设计的、可以生成浏览器可执行的二进制文件的编程语言。并且于2017 年 2 月 28 日,四个主要的浏览器一致同意宣布 WebAssembly 的 MVP 版本已经完成,即将推出一个浏览器可以搭载的稳定版本。WebAssembly 的一个主要目标就是变快。本文将给出一些它如何变快的技术细节。 阅读全文请点击:WebAssembly 为什么比 asm.js

MDK报错 .error: unknown register name ‘msp‘ in asm

似乎只能安装 V5的编译器 才能解决,下面是安装链接 https://blog.csdn.net/u011436603/article/details/136419969 V5的编译器 CSDN免费下载链接: =========================================================== 以下办法解决不了 解决办法: 在MDK 桌面图标,右击打开安

从Rust到远方:ASM.js星系

来源: https://mnt.io/2018/08/28/from-rust-to-beyond-the-asm-js-galaxy/ 这篇博客文章是这一系列解释如何将Rust发射到地球以外的许多星系的文章的一部分: 前奏,WebAssembly 星系ASM.js星系(当前这一集)C 星系PHP星系,以及NodeJS 星系 Rust解析器将要探索的第二个星系是ASM.js。这篇文章会解释什么是

AIX小机环境如何给ASM添加磁盘

前面几篇介绍了HPUX,Solaris平台上RAC集群ASM如何添加磁盘的 ,三大UNIX平台只差AIX,本文介绍AIX平台RAC 添加ASM磁盘 environment: AIX 6.1 + oracle 10.0.2.4   2 nodes RAC (storage HP-6100 FC disk) 1. 存储划盘,并将盘赋予集群两个节点主机 2. 主机上发现新建磁盘 sfc3ra

nested exception is java.lang.NoClassDefFoundError: org/objectweb/asm/Type

在使用cglib进行动态代理时,很可能会出现下面的异常: NoClassDefFoundError: org/objectweb/asm/Type 当这种异常出现时,可能从下面几个方法查找问题。 1、asm包有没有导入 由于cglib动态代理需要使用asm反射包,所以,如果没有导入asm就会出现org.objectweb.asm.Type类找不到的问题,导入asm包就可以了。 2、a