asm新增刪除磁碟
一、 ASM_POWER_LIMIT 引數
這個引數 ASM_POWER_LIMIT 引數控制 ASM 後臺程式 ARBx 的數量。ARBx 程式用來進行 ASM 磁碟資料重新分佈打散。ASM_POWER_LIMIT 取值 從 0 到 11(據說從 10gR2 開始可以設定為 0 ). 當新新增磁碟或者刪除磁碟後,ASM 會啟動 ARBx 進行 IO 分散操作,該引數值越大,io 越大。這是個非常消耗資源的動作,所以一定要選擇系統空閒的時候進行。
ASM_POWER_LIMIT 引數官方描述:
ASM_POWER_LIMIT specifies the maximum power on an Automatic Storage Management instance for disk rebalancing. The higher the limit, the faster rebalancing will complete. Lower values will take longer, but consume fewer processing and I/O resources.
If the POWER clause of a rebalance operation is not specified, then the default power will be the value of ASM_POWER_LIMIT.
根據 邏輯 cpu個數 與 負載情況 ,確定 asm_power_limit 引數。
1.1 檢視邏輯cpu個數
$ cat /proc/cpuinfo |grep "processor"|wc -l
48
1.2 grid使用者登入,設定 asm_power_limit 引數
$ sqlplus / as sysasm
SQL> show parameter asm_power_limit
NAME TYPE VALUE
------------------------------------ --------------- ------------------------------
asm_power_limit integer 1
1.3 修改 asm_power_limit 引數
SQL> alter system set asm_power_limit=20 sid= '*' scope=both;
1.4 新增或者刪除asm磁碟
1.5 還原 asm_power_limit 預設值
SQL> alter system set asm_power_limit=1 sid= '*' scope=both;
二、 新增磁碟組磁碟成員 (最好保證新增的磁碟成員size大小與該磁碟組其他成員size大小一致,否則浪費最大可用空間)
1.grid使用者進入asm環境
node1-> sqlplus / as sysasm
2.檢視當前環境的資訊
SQL>
col name for a35;
select a.group_number,b.name,a.path from v$asm_disk a,v$asm_diskgroup b where a.group_number=b.group_number;
3.增加一個asm磁碟 ,之後磁碟做 rebalance 操作
SQL> ALTER DISKGROUP DATA ADD DISK '/dev/asm-data02';
Diskgroup altered.
-- 如果查詢出來有結果,說明磁碟資料遷移沒有結束。如果查詢出來結束輸出為 no rows selected ,說明磁碟資料遷移已經結束。
SQL> select OPERATION,POWER,EST_RATE,EST_MINUTES,STATE from v$asm_operation;
GROUP_NUMBER OPERATION STATE POWER ACTUAL SOFAR
------------ --------------- ------------ ---------- ---------- ----------
EST_WORK EST_RATE EST_MINUTES
---------- ---------- -----------
ERROR_CODE
--------------------------------------------------------------------------------
3 REBAL RUN 1 1 195
300 782 0
4. 查詢磁碟情況
SQL>
col name for a40;
select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;
GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ ---------------------------------------- ---------- ----------
3 DATA_0000 43008 40913
2 FLASH_0000 15360 14211
1 GRIDDG_0000 1024 830
1 GRIDDG_0001 1024 863
3 DATA_0001 6144 5842
SQL> select OPERATION,POWER,EST_RATE,EST_MINUTES,STATE from v$asm_operation;
no rows selected > 磁碟 rebalance 操作結束
三、 刪除磁碟組磁碟成員
3.0 查詢磁碟資訊,保留磁碟機代號path路徑 ( 刪除磁碟組的一個磁碟成員,但必須確保刪除該磁碟成員之後,該磁碟組的其他成員有足夠空間做 rebalance )
SQL>
col path for a30;
select group_number,disk_number,path from v$asm_disk order by group_number,disk_number;
GROUP_NUMBER DISK_NUMBER PATH
------------ ----------- ------------------------------
1 0 /dev/asm-ocr
1 1 /dev/asm-vd
2 0 /dev/asm-date
2 1 /dev/asm-date02
3 0 /dev/asm-flash
SQL> col name for a40
SQL> select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;
GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ ---------------------------------------- ---------- ----------
3 DATA_0000 43008 40913
2 FLASH_0000 15360 14211
1 GRIDDG_0000 1024 830
1 GRIDDG_0001 1024 863
3 DATA_0001 6144 5842
3.1 開始刪除磁碟 DATA_0001 , 磁碟做 rebalance 操作
SQL> alter diskgroup DATA drop disk DATA_0001;
Diskgroup altered.
3.2 檢視磁碟情況
SQL>
col name for a45;
select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;
GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ --------------------------------------------- ---------- ----------
3 DATA_0000 43008 40613
2 FLASH_0000 15360 14211
1 GRIDDG_0000 1024 830
1 GRIDDG_0001 1024 863
說明: 一旦重新調整刪除了所有的分配單元,那麼這個磁碟就從這個磁碟組中刪除了。
3.3 檢視磁碟 rebalance 操作是否結束,如果查詢輸出結果為 no rows selected ,表示已經 rebalance 結束。
SQL> select OPERATION,POWER,EST_RATE,EST_MINUTES,STATE from v$asm_operation;
no rows selected
SQL>
col state for a10;
col path for a20;
SQL> select path,group_number, disk_number,mount_status,state from v$asm_disk;
PATH GROUP_NUMBER DISK_NUMBER MOUNT_STATUS STATE
-------------------- ------------ ----------- --------------------- ----------
/dev/asm-data02 0 0 CLOSED NORMAL
/dev/asm-date 3 0 CACHED NORMAL
/dev/asm-flash 2 0 CACHED NORMAL
/dev/asm-ocr 1 0 CACHED NORMAL
/dev/asm-vd 1 1 CACHED NORMAL
說明:踢出磁碟後的成員, GROUP_NUMBER,DISK_NUMBER 顯示為 0 , 0
補充:磁碟處理方案
SQL>
col name for a20;
select group_number,disk_number,name,TOTAL_MB,FREE_MB,TOTAL_MB-FREE_MB used_size from V$asm_disk_stat order by group_number,disk_number;
GROUP_NUMBER NAME TOTAL_MB FREE_MB USED_SIZE
------------ -------------------- ---------- ---------- ----------
1 OCRVOTDG_0001 4096 3914 182
1 OCRVOTDG_0000 4096 3880 216
2 DATADG01_0004 284672 188576 96096
2 DATADG01_0000 284672 188648 96024
2 DATADG01_0005 284672 188632 96040
2 DATADG01_0006 284672 188616 96056
2 DATADG01_0007 284672 188664 96008
2 DATADG01_0001 284672 188584 96088
2 DATADG01_0002 284672 188560 96112
2 DATADG01_0003 284672 188584 96088
3 DATADG02_0004 284672 200504 84168
GROUP_NUMBER NAME TOTAL_MB FREE_MB USED_SIZE
------------ -------------------- ---------- ---------- ----------
3 DATADG02_0003 284672 200424 84248
3 DATADG02_0002 284672 200440 84232
3 DATADG02_0001 284672 200480 84192
3 DATADG02_0000 284672 200472 84200
3 DATADG02_0007 284672 200496 84176
3 DATADG02_0005 284672 200432 84240
3 DATADG02_0006 284672 200424 84248
4 DATADG03_0002 284672 273664 11008
4 DATADG03_0000 284672 273664 11008
4 DATADG03_0001 284672 273656 11016
5 ARCHDG_0000 284672 82672 202000
22 rows selected.
SQL> select sum(total_mb-free_mb) T_size from v$asm_disk;
T_SIZE
----------
1677646
SQL> select sum(total_mb) T_size from v$asm_disk;
T_SIZE
----------
5701632
SQL> select sum(free_mb) T_size from v$asm_disk;
T_SIZE
----------
4023986
磁碟處理情況說明:
SQL> select group_number,sum(total_mb) total_M,sum(total_mb-free_mb) used_size_M ,sum(free_mb) free_M from v$asm_disk group by group_number order by group_number ;
GROUP_NUMBER TOTAL_M USED_SIZE_M FREE_M
------------ ---------- ----------- ----------
1 8192 398 7794 (不動)
2 2277376 768512 1508864
3 2277376 673704 1603672
4 854016 33032 820984
5 284672 202000 82672 (不動)
SQL> select sum(total_mb) total_M,sum(total_mb-free_mb) used_size_M ,sum(free_mb) free_M from v$asm_disk where group_number in (2,3,4);
TOTAL_M USED_SIZE_M FREE_M
---------- ----------- ----------
5408768 1475248 3933520
計劃方案:已經使用 1677646 M ,存留 2.7 T=2831155 M , 踢出 2870477 M
5701632 - 2831155 = 2870477 M
2870477/284672 = 10.0834539
實際實施:
group 2 踢出4塊磁碟,DATADG01_0007~DATADG01_0004 。
group 3 踢出4塊磁碟,DATADG02_0007~DATADG02_0004。
group 4 踢出2塊磁碟,DATADG03_0002,DATADG03_0001 。
實際踢出空間:284672*10=2846720/1024/1024= 2.71484375 T
實際存留空間:5408768-2846720=2562048/1024/1024= 2.44335938 T
實施後儲存情況:
GROUP_NUMBER TOTAL_M USED_SIZE_M FREE_M
------------ ---------- ----------- ----------
1 8192 398 7794
2 1138688 768512 370176
3 1138688 673704 464984
4 284672 33032 251640
5 284672 202000 82672
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2142935/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ASM磁碟簡單維護,新增,刪除ASM
- 遷移OCR和VotingDisk並刪除原ASM磁碟組ASM
- 【ASM】Oracle asm刪除磁碟組注意事項ASMOracle
- 在ASM磁碟組中刪除歸檔日誌報ORA-15028ASM
- 一次ASM新增新的磁碟組ASM
- 新增、刪除PPA源
- ASM磁碟組限制ASM
- jQuery 新增和刪除classjQuery
- 紅黑樹新增刪除
- 【ASM】Oracle asm磁碟被格式化,如何掛載該磁碟組ASMOracle
- 遷移ASM磁碟組ASM
- 陣列的方法-新增刪除陣列
- class屬性的新增刪除
- 新增cookie、刪除cookie、清除cookieCookie
- 【ASM】ASM磁碟頭被重寫,如何修復ASM
- mysql-刪除和新增主鍵MySql
- JavaScript 陣列新增或者刪除元素JavaScript陣列
- Linux基礎命令—新增/刪除組Linux
- Ubuntu新增刪除環境變數Ubuntu變數
- CentOS新增、刪除環境變數CentOS變數
- jQuery為元素新增和刪除classjQuery
- Cookie新增、獲取以及刪除操作Cookie
- 主鍵的建立、新增、刪除操作
- MySQL 8.0 instant 新增和刪除列MySql
- windows 新增和刪除靜態路由Windows路由
- JavaScript 動態新增與刪除元素JavaScript
- mongodb副本集新增刪除節點MongoDB
- redis cluster節點/新增刪除操作Redis
- JavaScript新增和刪除select下拉項JavaScript
- networkx基礎用法:新增節點、新增邊、刪除節點、刪除邊、計算度、賦權重
- 從定位資料塊所在ASM磁碟到ASM strippingASM
- ASM磁碟組更換磁碟的操作方法ASM
- WPF中的ListBox怎麼新增刪除按鈕並刪除所在行
- JavaScript動態新增或者刪除HTML元素JavaScriptHTML
- jQuery動態新增和刪除表格行jQuery
- jQuery table表格行的新增和刪除jQuery
- JavaScript動態新增和刪除div元素JavaScript
- flutter TabBarView 動態新增刪除頁面FluttertabBarView
- win10新增或刪除程式在哪 win10系統怎麼開啟新增或刪除程式Win10