oracle ASM 如何添加新磁碟到磁碟,oracleasm
適用平台: AIX hp linux win Solaris
適用版本:所有資料庫10.1.0.2 to12.1.0.1
適用於 rac和 standalone
以RAC 環境為例: 假設 oracle 為oracle rdbms 屬組;grid 為 gi 屬組;
For ASMLIB users:
RAC 環境 gi owner 執行以下命令
1、# /etc/init.d/oracleasm scandisks #( root使用者執行)
$> id
$> /etc/init.d/oracleasm listdisks
$> /etc/init.d/oracleasm querydisk <具體磁碟路徑>
所有節點都要執行;
2、在作業系統層面檢查磁碟是否可以讀寫(每個節點)(oracle 使用者或者grid使用者)
# raw device
$> dd if=/dev/raw/raw1 of=/dev/null count=100 bs=8192
# ASMLIB device
$> dd if=/dev/oracleasm/disks/PRODA07 of=/dev/null count=100 bs=8192
# raw device
$> dd if=/dev/rdsk/c1t3d0s6 of=/dev/null count=100 bs=8192
3、適用kfed 驗證磁碟是否為候選盤;
kfed read <raw/character or block partition >|grep kfbh.type
kfbh.type: 0 ; 0x002: KFBTYP_INVALID 如果看到這麼一個結果,表明該磁碟是可用的。
4、建立臨時磁碟組,主要是用ASM 執行個體來檢驗下所有要加的盤沒有問題,即使出問題,也不會影響原來的生產系統。雖然要檢查的步驟比較多,比較煩,但是對於生產系統來說出不了任何意外。
CREATE DISKGROUP lixora EXTERNAL REDUNDANCY DISK '/dev/rhdisk*';
5、檢查剛建立的dg 是否已經自動mount 了?
SELECT STATE, NAME FROM V$ASM_DISKGROUP;
6、如果沒有mount,嘗試手工mount
ALTER DISKGROUP TEST MOUNT;
---確認dg狀態
SELECT STATE, NAME FROM V$ASM_DISKGROUP;
7、如果step6 查詢lixora成功mount(如果rac ,則確保每個ASM執行個體都成功mount)
則說明我們需要添加的asm 盤都正常的,可以正常使用。那麼我們就可以把他們加到生產的dg中了。
-----卸載dg(在ASM instance中執行這個命令)
alter diskgroup test dismount;
----刪除測試用臨時dg (在ASM instance 中執行這個命令)
DROP DISKGROUP TEST;
8、到這裡就可以吧候選盤加到生產的dg裡了。
ALTER DISKGROUP <my production diskgroup> ADD DISK '<your candidate disk>';
Standalone 環境也是一樣的,同樣建議執行上述測試步驟。