天天看點

ORACLE ASM常用指令整理

ASM 指令整理

一. 檢視ASM空間使用情況

1. lsdg: 檢視磁盤組的資訊,和磁盤空間大小

ASMCMD> lsdg State    Type    Rebal  Block   AU       Total_MB  Free_MB  Usable_file_MB  Offline_disks  Voting_files  Name MOUNTED  EXTERN  N       4096  1048576     5739     5339             5339             0            Y    DATA/ MOUNTED  EXTERN  N       4096  1048576     5739     3669             3669             0            N   DATADG01/

2. 檢視磁盤組,(空間情況)

SQL> select name name2,state,type,free_mb,total_mb,usable_file_mb from v$asm_diskgroup;

       NAME2               STATE    TYPEFREE_MB Total_MB  USABLE_FILE_MB --------------- ----------- ---------------- ---------- ----------- DATAMOUNTED         EXTERN   5339       5,739         5339 DATADG01MOUNTED     EXTERN   3669       5,739         3669

3.檢視及修改asm重新平衡粒度

SQL> show parameter power

NAME                   TYPE      VALUE ---------------------------------------- asm_power_limit      integer      4

SQL> show parameter asm   NAME                        TYPE  VALUE ------------------------------------ ------------- asm_diskgroups            string  DATADG01 asm_diskstring            string asm_power_limit           integer  4 asm_preferred_read_failure_groups  string

4.檢視asm執行個體操作變化(隻記錄結構變化操作) select * from v$asm_operation;

注意:執行以下指令要用grid 使用者 用sqlplus / as sysasm 這個權限登入 $ export ORACLE_SID=+ASM1 $ sqlplus / as sysasm  

二、ASM磁盤組的建立删除挂載

1.asm磁盤組建立

asmca(11g),10g(dbca) 圖形界面

sql>create diskgroup datadg01 external redundancy disk '/dev/raw/raw1';

2.asm 磁盤組删除 sql>drop diskgroup datadg01;

3.asm磁盤組添加磁盤 sql>alter diskgroup datadg01 add disk '/dev/raw/raw2';

4.asm磁盤組删除磁盤 sql>select name,path from v$asm_disk;查詢到名稱

NAME            PATH ----------------------------- DATA_0000       /dev/raw/raw1 DATA_0001       /dev/raw/raw2 DATA_0002       /dev/raw/raw3 DATADG01_0000   /dev/raw/raw5 DATADG01_0001   /dev/raw/raw6 DATADG01_0002   /dev/raw/raw7

sql>alter diskgroup datadg drop disk 'DATADG01_0001'; --這裡是磁盤名稱,而不是'/dev/raw/raw1'

5.挂載

Sql>alter diskgroup datadg01 mount; or Sql>alter diskgroup all mount;

6.解除安裝 Sql>alter diskgroup datadg01  dismount; or Sql>alter diskgroup all dismount;

7.删除 Sql>drop diskgroup datadg01; 說明:删除磁盤組時,磁盤組必須被挂載(mount)

三. ASM磁盤組目錄管理

1.asm磁盤組增加目錄 SQL> alter diskgroup datadg01 add directory '+datadg01/datafile';

2.Asm磁盤組重命名目錄 SQL> alter diskgroup datadg01 rename directory '+datadg01/datafile' to '+datadg01/datafile01';

3.Asm磁盤組增加多層目錄,必須一層一層添加

--首先添加zw SQL> alter diskgroup datadg01 add directory '+datadg01/zw/';

然後添加datafile SQL> alter diskgroup datadg01 add directory '+datadg01/zw/datafile';

4.Asm磁盤組删除 SQL> alter diskgroup datadg01 drop directory '+datadg01/datafile';

四. ASM磁盤組檔案管理

資料檔案添加别名 sql>alter diskgroup datadg01 add alias '+datadg01/node/datafile/users.dbf' for '+datadg01/node/datafile/users.266.987885487';

重新命名别名 SQL> alter diskgroup datadg01 rename alias '+datadg01/node/datafile/users.dbf' to '+datadg01/node/datafile/users01.dbf';

查詢别名 SQL> select name,group_number,file_number,alias_index,alias_directory,system_created from v$asm_alias where file_number=266;

删除别名 SQL> alter diskgroup datadg01 drop alias '+datadg01/node/datafile/users01.dbf'; 

五. ASM幾個重要參數

asm_power_limit當加入磁盤後磁盤組的各個磁盤之間做均衡程序 asm_disktring  指定asm啟動時候查找磁盤路徑 Linux 自動搜尋:/dev/raw/ 和/dev下的裝置檔案 aix 自動搜尋:/dev/下裝置檔案 hp-ux:由于hp-ux下的磁盤路徑在/dev/rdsk/下邊,需要設定

磁盤組的重新平衡:當磁盤組中的磁盤發生變化時,磁盤組将自動進行重新平衡 平衡級别為0-11,當手工進行重新平衡時,可以指定平衡級别 可用的最進階别通過初始化參數asm_power_limit 指定

SQL>alter diskgroup datadg01 rebalance  power 3; SQL>alter diskgroup datadg01 rebalance  power 3 wait ;

六.ASM相關視圖

v$asm_disk(_stat)      --檢視磁盤及其狀态資訊 v$asm_diskgroup(_stat) --檢視磁盤組及其狀态資訊 v$asm_operation        --檢視目前磁盤的操作資訊 v$asm_client           --傳回目前連接配接的用戶端執行個體資訊 v$asm_file             --傳回asm檔案的相關資訊 v$asm_template         --傳回asm檔案樣本的相關資訊 v$asm_alias            --傳回asm檔案的别名資訊

七.添加資料檔案

如果是資料庫檔案 sql>create tablespace test datafile'+datadg01' size 100M;

如果歸檔日志: sql>alter system set log_archive_dest_1='location=+datadg01' scope=both;

八. ASMCMD的使用

ORACLE ASM常用指令整理

繼續閱讀