1. 方法一:使用asmdevices(推荐使用,但不适用EMC Powerpath
)查看硬盘的SCSI号,两个机器认到的/dev/sda对应在实际的物理盘可能不是一块,但scsi号肯定是完全一致的。
代码1
[root@sgdb1 ~]# scsi_id -g -u -d /dev/sdc

36000c294cea6a656a1e8e32f1091ccaf
[root@sgdb1 ~]# scsi_id -g -u -d /dev/sdd
36000c29f6b12b22e033aac10d8b2c42e
[root@sgdb1 ~]# scsi_id -g -u -d /dev/sde
36000c299cb59b588699f4f086f55ebf8
注意:在生产环境盘符可能为/dev/emcpowera、/dev/emcpowerb等等
)配置文件/etc/udev/rules.d/99-oracle-asmdevices.rules(不存在则手动添加)
代码2
[root@sgdb1 ~]# vim /etc/udev/rules.d/99-oracle-asmdevices.rules

——本例子中添加三个设备,对应asm-ocr、asm-data1、asm-data2
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB5f88d70c-1a9065fc", NAME="asm-ocr", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB864fa5ad-de19b87f",NAME="asm-data1",OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB1e210051-3851ce93",NAME="asm-data2",OWNER="grid", GROUP="asmadmin", MODE="0660"
 
注意:只需修改加粗部分,修改SCSI号与映射出来的ASM设备名称,其他地方禁止修改
)执行start_udev
代码3
[root@sgdb1~]# start_udev

如果执行成功,则会在/dev/下生成asm块设备,并且权限为grid: asmadmin
[root@sgdb1 ~]# ll /dev/asm-*
brw-rw---- 1 grid asmadmin 8, 48 Dec 10 14:00 /dev/asm-data1
brw-rw---- 1 grid asmadmin 8, 64 Dec 10 14:00 /dev/asm-data2
brw-rw---- 1 grid asmadmin 8, 32 Dec 10 14:00 /dev/asm-ocr
(注意各个原始设备的权限是否为grid:asmadmin)
注意:start_udev会在开机自动启动(启动文件为/etc/rc.sysinit)
)回退方案
如果发现udev配置错了,并且已经生成了块设备,那么需要手动修改;已经映射的设备是不会被自动清空的,需要手动删除该设备:
代码4
[root@ptsdb1 rules.d]# rm -rf /dev/asm-*

修改好/etc/udev/rules.d/99-oracle-asmdevices.rules文件后,再执行:
[root@sgdb1~]# start_udev
    1. 方法二:使用裸设备(EMC Powerpath使用
)修改配置文件
代码19
[root@sgdb1~]# vim /etc/udev/rules.d/60-raw.rules

——添加
ACTION=="add", KERNEL=="sdc", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdd", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sde", RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", KERNEL=="raw*", OWNER="grid",GROUP=" asmadmin ",MODE="660"
[root@sgdb1~]# start_udev
——如果执行成功,则会在/dev/raw生成原始设备,并且权限为grid: oinstall
[root@sgdb1~]# ll /dev/raw
brw-rw---- 1 grid asmadmin 8, 48 Dec 10 14:00 raw1
brw-rw---- 1 grid asmadmin 8, 64 Dec 10 14:00 raw2
brw-rw---- 1 grid asmadmin 8, 64 Dec 10 14:00 raw3
(注意各个原始设备的权限是否为grid: asmadmin)
注意:start_udev会在开机自动启动(启动文件为/etc/rc.sysinit)
)回退方案
如果发现udev配置错了,已经映射的设备是不会被自动清空的,需要手动删除裸设备:
代码20
[root@sgdb1 rules.d]# raw /dev/raw/raw1 0 0

[root@sgdb1 rules.d]# raw /dev/raw/raw2 0 0
[root@sgdb1 rules.d]# raw /dev/raw/raw3 0 0
修改好/etc/udev/rules.d/60-raw.rules文件后,在执行:
[root@sgdb1~]# start_udev
 

第4步:创建RAC共享磁盘组的更多相关文章

  1. LINUX 11G RAC ASM磁盘组在线增加磁盘扩容

    LINUX 11G RAC ASM磁盘组在线增加磁盘扩容 1.操作系统版本 OEL 6.1 [root@cqltjcpt1 ~]# more /etc/redhat-release Red Hat E ...

  2. 通过udev创建ASM共享磁盘(RAC)

    OS:RedHat EL6.0 Oracle:   Oracle 11gR2 在Oracle 11gR2,构建RAC时可以通过ASM创建asm disk,但是需要安装asmlib相关软件:对于RedH ...

  3. 转://通过udev创建ASM共享磁盘(RAC)

    OS:RedHat EL6.0 Oracle:   Oracle 11gR2 在Oracle 11gR2,构建RAC时可以通过ASM创建asm disk,但是需要安装asmlib相关软件:对于RedH ...

  4. oracle 11g rac asm磁盘组增加硬盘

    要增加磁盘的磁盘组为:DATA 要增加的磁盘为: /dev/sde1 在第一个节点上:[root@rac1 ~]# fdisk /dev/sdeDevice contains neither a va ...

  5. Oracle RAC集群搭建(六)--ASM创建oradata的磁盘组

    一,查看实例环境 su - grid env|grep ORA 发现连接空实例 改环境 到这里检测就完成了 二,配置安装 grid 用户输入asmca ASM数据盘就创建好了      

  6. RAC共享磁盘挂载工具

    待更新: oracleasm: udev: 自己搭建个存储服务器:

  7. Linux下搭建Oracle11g RAC(8)----创建ASM磁盘组

    以grid用户创建ASM磁盘组,创建的ASM磁盘组为下一步创建数据库提供存储. ① grid用户登录图形界面,执行asmca命令来创建磁盘组: ② 进入ASMCA配置界面后,单击Create,创建新的 ...

  8. Oracle ASM 磁盘组基础知识整理(收藏版)

    转至:https://cloud.tencent.com/developer/article/1494403 为什么要写这么一篇基础知识呢?还是有那么一点点原因的,不是胡编乱造还真是有真实存在的事件的 ...

  9. ASM磁盘组扩容流程

    环境:RHEL 6.5 + GI 11.2.0.4 + Oracle 11.2.0.4 1.确认磁盘权限正确 2.图形界面配置 3.启用asmca配置 4.修改磁盘组rebalance power级别 ...

随机推荐

  1. Docker实践4: 基于nginx对后端的weblogic负载均衡

    为什么要用Nginx(抄了一段) 1.nginx相对于apache的优点: 轻量级,同样起web服务,比apache占用更少的内存及资源 抗并发,nginx处理请求是异步非阻塞的,而apache则是阻 ...

  2. python3+django使用celery执行某些任务失败的解决方案

    .在celery 的worker启动窗口设置export PYTHONOPTIMIZE=1 export PYTHONOPTIMIZE=1 /usr/local/python36/bin/celery ...

  3. [转载]Oracle批量执行

    FROM: http://www.cnblogs.com/wangyayun/p/4514411.html //批量添加20000条数据用时8秒. try { String url = "j ...

  4. 深入NIO Socket实现机制(转)

    http://www.jianshu.com/p/0d497fe5484a# 前言 Java NIO 由以下几个核心部分组成: Buffer Channel Selector 以前基于net包进行so ...

  5. Idea闪退问题-内存不能给太大

    Idea闪退问题-内存不能给太大 学习了:https://blog.csdn.net/qq_17776287/article/details/77529455 学习了:https://blog.csd ...

  6. Python程序员的10个常见错误

    关于Python Python是一门解释性的,面向对象的,并具有动态语义的高级编程语言.它高级的内置数据结构,结合其动态类型和动态绑定的特性,使得它在快速应用程序开发(Rapid Applicatio ...

  7. bjxdpkdzvaciu

    xufutwovrcgwcdjrmkmsmoiemsgsfk

  8. 【Datastage】NULL VALUE TO A NOT NULL VALUE

    使用ds是报错如上图: 造成这个问题的原因是: 在写SQL时候没有给字段别名与DS中对应一致 例如有下表: CREATE TABLE DataInfo( ID_1 ), ID_2 ) ) CREATE ...

  9. 【Android进阶】怎样使用文件来保存程序中的数据

    在程序中.有非常多保存和获取数据的方法,本篇文章,主要介绍使用文件系统对程序中的数据进行保存和读取的操作 我直接写了一个帮助类,进行文件的写入和读取操作 /** * 用于在文件里保存程序数据 * * ...

  10. js常用工具

    1.反编译工具 .NET Reflector 2.js检查工具 ReSharper 8.0.14.856 官方原版+注册机     JScript Editor Extensions     JSEn ...