手工建立ASM Disk Groups、為 ASM Disk Groups 新增 disk

張衝andy發表於2017-02-28

Groups 新增 disk

建立語法說明:

必選引數:

(1) 指定disk group 的唯一名稱 (不分割槽大小寫)

(2) 指定disk group 的冗餘級別
對於ASM 的映象冗餘,可以指定3種型別:
normal redundancy: 2-way mirroring
high redundancy:3-way mirroring
external redundancy: 使用外部的冗餘

(3) 指定哪些disk 屬於我們的建立的disk group
這些disk 的名稱全路徑,也可以在名稱中使用萬用字元,只要能夠識別出來即可。

可選引數:

(4)指定哪些disk 屬於failure group (針對normal,high。必須指定指定相同大小的failgroup,不然失去資料冗餘在不同磁碟的意義)
我們在建立disk group 的時候也不指定failure group,那麼就是disk 作為自己的failure。
(5)指定disk group 的一些屬性,如軟體相容性或者AU_SIZE 等。
(6) quorum 屬性 (該屬性不要指定)

建立disk group 示例:

1. 先確保asm_diskstring 引數爭取的設定:
SQL> show parameter asm_diskstring
[root@asm ~]# ll /dev/asm*
SQL> select group_number,disk_number,total_mb,name,failgroup,path from v$asm_disk order by 1;

2. 建立disk group
我們建立一個叫 ANDY 的disk group:
create diskgroup andy normal redundancy
failgroup fg1 disk
'/dev/asm-disko' name andy_fg1
failgroup fg2 disk
'/dev/asm-diskm' name andy_fg2
attribute 'au_size'='4M',
'compatible.asm' = '11.2', 
'compatible.rdbms' = '11.1';

修改Disk Groups 配置:

背景說明

在建立完diskgroup之後,我麼可以使用alter diskgroup 與來修改disk group的配置。
我們可以在資料庫online的狀態下add,resize, drop disk。

要注意一點,如果有多個操作要執行,儘可能的把多個操作使用一個alter diskgroup語句來實現,這樣可以減少rebalancing 的操作。

當disk group的配置發生改變時,Oracle ASM 會自動進行rebalance的操作。預設情況下,ALTER DISKGROUP操作不需要等待rebalance操作的完成才返回。 我們可以透過查詢V$ASM_OPERATION 檢視監控rebalance的狀態。

如果在alter diskgroup的語句中加上rebalance wait子句,那麼在執行alter 命令的時候,就必須等待rebalance 操作結束,
alter 命令才會返回成功。

disk group中新增disk:
1. 先檢視磁碟組的情況,確定冗餘型別與failgroup。
SQL> select group_number,disk_number,total_mb,name,failgroup,path from v$asm_disk where group_number=4 order by 1;

2. 正式新增,分情況。
2.1 若是外部冗餘,則可直接預設模式新增
SQL> alter diskgroup orcl add disk '/dev/asm-diskl';

2.2 若是normal或high,則在新增的時候要指定failgroup。
如: 2個failure goup. 現在我們向其中增加一個disk。 
則 SQL> alter diskgroup dave add FAILGROUP FG1 disk '/dev/asm-diskj';
SQL> alter diskgroup dave add FAILGROUP FG2 disk '/dev/asm-diskj';

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2134458/,如需轉載,請註明出處,否則將追究法律責任。

相關文章