1. 程式人生 > >Oracle RAC 更換儲存處理過程

Oracle RAC 更換儲存處理過程

目標:Oracle RAC系統更換共享儲存,由HUAWEI儲存更換為IBM儲存。

計劃步驟:

1.根據現有的LUN的數量及大小,從IBM新分配LUN;

2.使用Oracle的工具(asmca或OEM),從磁碟組層面替換磁碟;

遇到的問題:

在給磁碟組新增磁碟時,系統報錯,不能新增磁碟。於是測試使用新的IBM磁碟建立磁碟組,報錯,alert.log中的內容如下:

SQL> CREATE DISKGROUP testgroup EXTERNAL REDUNDANCY  DISK '/dev/mapper/asmdisk_0a' SIZE 307200M  ATTRIBUTE 'compatible.asm'='11.2.0.0.0','au_size'='1M' /* ASMCA */
NOTE: Assigning number (2,0) to disk (/dev/mapper/asmdisk_0a)
NOTE: initializing header on grp 2 disk TESTGROUP_0000
WARNING: detected duplicate paths to the same disk:
  '/dev/mapper/asmdisk_0a' and
  '/dev/dm-2'
More trace information dumped to '/oracle/app/oracle/diag/asm/+asm/+ASM1/trace/+ASM1_ora_60504.trc'
NOTE: erasing header on grp 2 disk TESTGROUP_0000
GMON dismounting group 2 at 40 for pid 37, osid 60504
NOTE: Disk  in mode 0x8 marked for de-assignment
ERROR: diskgroup TESTGROUP was not created
ORA-15018: diskgroup cannot be created
ORA-15020: discovered duplicate ASM disk "TESTGROUP_0000"
ERROR: CREATE DISKGROUP testgroup EXTERNAL REDUNDANCY  DISK '/dev/mapper/asmdisk_0a' SIZE 307200M  ATTRIBUTE 'compatible.asm'='11.2.0.0.0','au_size'='1M' /* ASMCA */

由此可知由於系統檢查到 '/dev/mapper/asmdisk_0a' 和  '/dev/dm-2'時相同的磁碟,從而導致不能建立磁碟組。
原因在於ASM資料庫的asm_diskstring的值時/dev/*,/dev/mapper/*,所以能搜尋到'/dev/mapper/asmdisk_0a' 和  '/dev/dm-2'


處理方法:
指定asm_diskstring的值為/dev/mapper/*,使系統只能搜尋到/dev/mapper/下的磁碟。

處理步驟:

1.檢查原華為磁碟的路徑,建立連結連線到/dev/mapper/下。
ASMCMD> lsdsk     
Path
/dev/sdan1
/dev/sdao1
/dev/sdap1
/dev/sdaq1
/dev/sdar1
/dev/sdas1
/dev/sdat1
/dev/sdau1
/dev/sdav1
/dev/sdaw1
/dev/sdax1
/dev/sday1
/dev/sdaz1
/dev/sdba1
/dev/sdbb1
/dev/sdbc1
/dev/sdbd1
/dev/sdbe1
/dev/sdbf1

#建立連結
ln /dev/sdan1 /dev/mapper/huawei_sdan1
ln /dev/sdao1 /dev/mapper/huawei_sdao1
ln /dev/sdap1 /dev/mapper/huawei_sdap1
ln /dev/sdaq1 /dev/mapper/huawei_sdaq1
ln /dev/sdar1 /dev/mapper/huawei_sdar1
ln /dev/sdas1 /dev/mapper/huawei_sdas1
ln /dev/sdat1 /dev/mapper/huawei_sdat1
ln /dev/sdau1 /dev/mapper/huawei_sdau1
ln /dev/sdav1 /dev/mapper/huawei_sdav1
ln /dev/sdaw1 /dev/mapper/huawei_sdaw1
ln /dev/sdax1 /dev/mapper/huawei_sdax1
ln /dev/sday1 /dev/mapper/huawei_sday1
ln /dev/sdaz1 /dev/mapper/huawei_sdaz1
ln /dev/sdba1 /dev/mapper/huawei_sdba1
ln /dev/sdbb1 /dev/mapper/huawei_sdbb1
ln /dev/sdbc1 /dev/mapper/huawei_sdbc1
ln /dev/sdbd1 /dev/mapper/huawei_sdbd1
ln /dev/sdbe1 /dev/mapper/huawei_sdbe1
ln /dev/sdbf1 /dev/mapper/huawei_sdbf1


2.修改asm例項的引數asm_diskstring使只搜尋/dev/mapper目錄。
alter system set asm_diskstring="/dev/mapper/*" scope=spfile;


3.重新啟動叢集,系統自動變更磁碟的路徑。

4.使用em或asmca或指令碼新增IBM磁碟,移去華為磁碟。