export ORACLE_SID=+ASM
create diskgroup DATA external redundancy disk ‘ORCL:VOL1’
sqlplus /nolog
conn / as sysdba
startup pfile=initasm+.ora
建立ASM初始化參數檔案initasm+.ora
INSTANCE_TYPE=ASM
ASM_POWER_LIMIT=3
ASM_DISKSTRING='ORCL:VOL*'
ASM_DISKGROUPS=DATA,RECOVERY,DGLOG1,DGLOG2
啟動完之後,檢視asm磁盤的狀态
SQL> select group_number,name,state,type from v$asm_diskgroup;
查詢asm執行個體狀态
select instance_name,host_name,version,status from v$instance;
asmcmd指令
lsct 列出關于目前ASM用戶端資訊,也就是使用ASM執行個體管理檔案的資料庫資訊
lsdg 列出所有磁盤組及其屬性
添加磁盤組必須啟動到nomount階段
SQL> startup nomount;
SQL> create diskgroup DISKGROUP2 normal redundancy disk 'ORCL:VOL5','ORCL:VOL6';
查詢建立好的磁盤組
SQL> select group_number,disk_number,path from v$asm_disk;
向磁盤組增加磁盤
alter diskgroup DISKGROUP2 add disk 'ORCL:VOL4';
删除磁盤
alter diskgroup DISKGROUP2 drop disk 'VOL6';
删除磁盤組
SQL> drop diskgroup DISKGROUP2 including contents;
讓某個磁盤組挂載
SQL> alter diskgroup DATA mount;
解除安裝磁盤
SQL> alter diskgroup DATA dismount;
mount和dismount所有磁盤組
SQL> alter diskgroup all mount;
SQL> alter diskgroup all dismount;
SQL> alter diskgroup all dismount force;
修改參數ASM_POWER_LIMIT的值
SQL> alter diskgroup DATA add disk 'VOL3' rebanlance power 5;
ASM目錄管理
建立目錄
SQL> alter diskgroup DATA add directory '+DATA/mydatafile';
可以用asmcmd進行驗證,建立目錄的時候需要注意父目錄必須存在。
修改目錄名
SQL> alter diskgroup DATA rename directory '+data/mydatafile' to '+data/mydbfile'
删除目錄
SQL> alter diskgroup DATA drop directory '+data/mydbfile' force;
添加别名
SQL> alter diskgroup DATA add alias '+DATA/mydatafile/myuser1.dbf' for '+data/myrac1/datafile/USERS.259.716341289';
修改别名
SQL> alter diskgroup DATA rename alias '+data/mydatafile/myuser1.dbf' to '+data/mydatafile/users.dbf';
删除别名
SQL> alter diskgroup DATA drop alias '+DATA/mydatafile/users.dbf';
删除檔案
SQL> alter diskgroup DATA drop file '+data/mydatafile/users.dbf';
使用datafile模闆建立一個表空間,預設在磁盤組DATA上建立表空間對應的資料檔案,檔案存儲在+DATA/myrac1/datafile/目錄下
SQL> create tablespace mytbs1 datafile;
使用onlinelog模闆來建立日志組和日志檔案
SQL> select group#,member,status,type from v$logfile;
SQL> alter database add logfile;