一、ASM磁碟和磁碟組管理
1、建立磁碟組
create diskgroup DG2 EXTERNAL REDUNDANCY DISK ‘ORCL:A1′;
Note:1)磁碟名稱需要大寫
2)磁碟名稱使用V$asm_disk.path
2、磁碟組中添加磁碟
alter diskgroup dg2 add disk ‘ORCL:A2′;
Note:磁碟名稱使用V$asm_disk.path
3、磁碟組中刪除磁碟
alter diskgroup dg2 drop disk ‘a1′;
Note:磁碟名稱使用的是V$asm_disk.name
4、刪除磁碟組
drop diskgroup dg2 including contents;
二、ASM相關視圖
1、查看是否有資料庫執行個體串連上ASM執行個體
select instance_name,db_name,status from v$asm_client;
2、記錄BALANCE操作
select operation,state,power,actual,sofar from v$asm_operation;
3、ASM DISK資訊
select path, state, total_mb, free_mb from v$asm_disk;
4、ASM DISKGROUP資訊
select name,state,type,total_mb,free_mb from v$asm_diskgroup;
三、ASM和資料表空間管理
1、ASM中建立資料表空間
create tablespace xff datafile ‘+DG2′ SIZE 100M;
2、ASM資料表空間中添加資料檔案
alter tablespace xff add datafile ‘+dg2′ size 10m;
3、ASM資料表空間中刪除資料檔案
alter tablespace xff drop datafile ‘+DG2/xff/datafile/xff.257.747278679′;
或者
alter tablespace xff drop datafile 7;
4、刪除資料表空間
drop tablespace xff including contents;
1、磁碟組卸載/掛載
--查看當前磁碟組狀態
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
GROUP_NUMBER NAME STATE TOTAL_MB FREE_MB
------------ -------------------- ---------------------- ---------- ----------
1 ARCHIVELOG MOUNTED 12637 12585
2 DATA MOUNTED 10228 7644
3 FLASHBACK MOUNTED 7836 7786
4 DG2 MOUNTED 5114 5012
--卸載dg2磁碟組
SQL> alter diskgroup dg2 dismount;
Diskgroup altered.
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
GROUP_NUMBER NAME STATE TOTAL_MB FREE_MB
------------ -------------------- ---------------------- ---------- ----------
1 ARCHIVELOG MOUNTED 12637 12585
2 DATA MOUNTED 10228 7644
3 FLASHBACK MOUNTED 7836 7786
0 DG2 DISMOUNTED 0 0
--掛載dg2磁碟組
SQL> alter diskgroup dg2 mount;
Diskgroup altered.
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
GROUP_NUMBER NAME STATE TOTAL_MB FREE_MB
------------ -------------------- ---------------------- ---------- ----------
1 ARCHIVELOG MOUNTED 12637 12585
2 DATA MOUNTED 10228 7644
3 FLASHBACK MOUNTED 7836 7786
4 DG2 MOUNTED 5114 5012
--卸載所有磁碟組
SQL> alter diskgroup all dismount;
Diskgroup altered.
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
GROUP_NUMBER NAME STATE TOTAL_MB FREE_MB