如何在 RAC 集群或单机 ASM 环境中对已经存在的 Diskgroup 添加新磁盘(最佳实践) (文档 ID 1946668.1)
文档内容
|
|
目标 |
|
|
解决方案 |
|
|
参考 |
适用于:
Oracle Database - Enterprise Edition - 版本 10.1.0.2 到 12.1.0.1 [发行版 10.1 到 12.1]本文档所含信息适用于所有平台
目标
在您将磁盘加入到已有的生产磁盘组之前,您可以使用下面步骤去校验候选磁盘状态,并保障可以被每个节点访问(这样可以防止对现有生产磁盘组造成损害),具体步骤如下:
解决方案
1) 使用 Oracle 或 Grid 系统用户,在每个节点运行下面命令(如果使用 ASMLIB API):
# /etc/init.d/oracleasm scandisks #(only this command needs to be executed as root user)
$> id
$> /etc/init.d/oracleasm listdisks
$> /etc/init.d/oracleasm querydisk
注意:所有磁盘在每个节点必须可见。
2) 确认每个节点(使用 oracle 或 Grid 系统用户)在系统级所有磁盘可见(I/O):
$> id
$> ls -l
$> dd if= of=/dev/null count=100 bs=8192
Example:
$> dd if=/dev/raw/raw1 of=/dev/null count=100 bs=8192 # raw device
$> dd if=/dev/oracleasm/disks/PRODA07 of=/dev/null count=100 bs=8192 # ASMLIB device
$> dd if=/dev/rdsk/c1t3d0s6 of=/dev/null count=100 bs=8192 # raw device
$> ls -l
$> dd if=
Example:
$> dd if=/dev/raw/raw1 of=/dev/null count=100 bs=8192 # raw device
$> dd if=/dev/oracleasm/disks/PRODA07 of=/dev/null count=100 bs=8192 # ASMLIB device
$> dd if=/dev/rdsk/c1t3d0s6 of=/dev/null count=100 bs=8192 # raw device
3) 在每个节点系统级别使用 kfed 命令确认候选磁盘可读(使用 oracle 或 Grid 系统用户):
$> kfed read
Example:
$> kfed read /dev/raw/raw1
$> kfed read /dev/oracleasm/disks/PRODA07
$> kfed read /dev/rdsk/c1t3d0s6
$> kfed read /dev/oracleasm/disks/PRODA07
$> kfed read /dev/rdsk/c1t3d0s6
注意:如果磁盘以前没有使用过,则kfed命令检查这个新磁盘将返回:kfbh.type: 0 ; 0x002: KFBTYP_INVALID 这是期望的。
4) 建一个新的临时磁盘组:
SQL> CREATE DISKGROUP TEST EXTERNAL REDUNDANCY DISK '';
5) 检查磁盘组是否已经被建立并且加载(mounted):
SQL> SELECT STATE, NAME FROM V$ASM_DISKGROUP;
6) 如果是,请手工将其加载至其他节点 ASM 实例:
SQL> ALTER DISKGROUP TEST MOUNT;
SQL> SELECT STATE, NAME FROM V$ASM_DISKGROUP;
SQL> SELECT STATE, NAME FROM V$ASM_DISKGROUP;
7) 如果前面步骤已经成功并且 TEST 磁盘组在每个 ASM 实例成功加载,则按下面步骤删除 TEST 磁盘组:
SQL> alter diskgroup test dismount; --(from all the ASM instances, except from one).
SQL> DROP DISKGROUP TEST; --(from the ASM instance, which the diskgroup is still mounted).
SQL> DROP DISKGROUP TEST; --(from the ASM instance, which the diskgroup is still mounted).
8) 可以将候选磁盘组加入到期望的磁盘组中:
SQL> ALTER DISKGROUP ADD DISK '';
注意:相同的磁盘校验步骤同样需要在 ASM Standalone 配置环境中。
参考
NOTE:1316936.1 - How To Verify If A New Candidate ASM Disk Is Cluster Wide Visible ORA-15075 / ORA-15080NOTE:288002.1 - OERR: ORA-15075 "disk %s is not visible on instance number %s" (varies by version) Reference Note
ORA-15080
ORA-15075
NOTE:837308.1 - Exact Steps To Migrate ASM Diskgroups To Another SAN/Disk-Array/DAS/etc Without Downtime.
NOTE:1918350.1 - Exact Steps to Migrate ASM Diskgroups to Another SAN/Disk-Array/DAS/Etc without Downtime (When ASMLIB Devices Are Involved)
NOTE:1911166.1 - How to Identify and Map the Real Physical Raw Device on Solaris Used as ASM Member or Candidate Disks on RAC or Standalone Configurations.