Where is the backup of ASM disk header block?

在Oracle 10.2.0.5之前,ASM磁盘的头块并没有自己的备份,因此一旦头块损坏,如果没有以前kfed read备份出来的信息,也就没有办法使用kfed merge来作头块恢复,特别是如果一个磁盘组中所有的磁盘头块都出现问题(比如被人为地创建了PV),恢复ASM磁盘头块的操作就会非常麻烦。 但是从Oracle 10.2.0.5之后,ASM磁盘的头块会自动备份在另外一个块中,这实际上是Oracle 11g出现的功能,不过经过测试,在Oracle 10.2.0.5版本中,这个备份也是存在的。 正是因为存在这个备份,所以Oracle 10.2.0.5之后的kfed程序才有了新的repair命令,该命令将备份块直接覆盖到磁盘头块,完成修复工作。 在Oracle 10.2.0.4中,如果尝试执行kfed repair,则会报错说命令行参数不正确,此报错说明并不存在repair命令: $ kfed repair KFED-00101: LRM error [102] while parsing command line arguments 但是在Oracle 10.2.0.5中,执行kfed repair,则会说无法打开文件空,而这正说明repair命令是存在的,报错是因为还需要明确指定要修复哪块磁盘: $ kfed…

Continue ReadingWhere is the backup of ASM disk header block?

How to use asmca to create ASM instance silently in Oracle 11gR2

对于只能登录字符界面的很多服务器而言,能够使用silent模式创建一些组件是至关重要的。本文介绍如何在字符界面下使用asmca来创建ASM实例。 测试环境:Oracle 11.2.0.3 + Oracle Restart 【关于Oracle Restat,可以参看我之前的文章-How to Use Oracle Restart in Oracle 11gR2】 在没有创建ASM实例之前,Clusterware中的资源状况如下: grid@solaris:~$ ct -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.LISTENER_SOLARIS.lsnr ONLINE…

Continue ReadingHow to use asmca to create ASM instance silently in Oracle 11gR2

How to use udev for Oracle ASM in Oracle Linux 6

大部分在网上可以找到的文档都是在RHEL5或者OEL5中设置udev,udev对于Linux而言最大的作用是防止操作系统重新启动以后,作为ASM磁盘使用的盘符发生变化。 比如说Tim Hall的文章:UDEV SCSI Rules Configuration for ASM in Oracle Linux 5。 比如说Maclean的文章:利用UDEV服务解决RAC ASM存储设备名。 但是在OEL6或者RHEL6中,这一切都有所变化。 主要的变化是: 1. scsi_id的命令语法发生了变化,scsi_id -g -u -s这样的命令不再有效。 2. udevtest命令已经没有了,整合到了udevadm中。 可以参考Redhat的官方文档(这个文档中本身有一些错误,在udev rules中漏了--device=,正确的方法参看下面的第3步): Configuring persistent storage in Red…

Continue ReadingHow to use udev for Oracle ASM in Oracle Linux 6