ASM存儲擴容操做其實很簡單,無非就是向DiskGroup(簡稱DG)裏添加物理磁盤,增長DG的存儲空間。說來簡單,其實操做過程當中有不少小細節要注意,不然,帶來的後果是災難性的。數據庫
ASM擴容操做步驟(以AIX操做系統爲例):oracle
(1)掃盤spa
cfgmgr -v 命令執行操做系統掃盤操做,須要在每一個節點上都要執行此命令,掃描出機器中新增的物理磁盤。掃描到新的物理磁盤後,執行如下命名:
chdev -l hdiskX -a pv=yes 給新的磁盤一個惟一編號id 操作系統
(2)查看磁盤配置信息日誌
lscfg -vpl hdiskX 命令來查看hdiskX磁盤的配置信息,確保這塊磁盤是來自於同一塊存儲,以防存儲問題。ci
(3)查看新磁盤的盤符信息it
lsattr -El hdiskX 命令查看hdiskX磁盤的盤符信息。注意須要在每一個節點上執行如下命令以修改reserve_policy屬性。io
chdev -l hdiskX -a reserve_policy=no_reserveasm
(4)修改磁盤的權限ast
想讓ASM識別出新增的物理磁盤,須要將新增的磁盤設備的權限修改成ASM用戶能夠訪問的權限才能夠。注意須要在每一個節點上都要執行如下操做:
切換到/dev路徑下執行如下命令:
chown oracle:dba /dev/rhdiskX --注意這個是rhdisk
chmod 660 /dev/rhdiskX
關於rdiskX與hdiks的區別在於一個是字符設備,一個是塊設備。
(5)向DG裏添加磁盤
SQL>Alter diskgroup datadg add disk '/dev/rhdiskX';
(6)查看數據Rebalancing狀況
在往ASM的DG中新增物理磁盤時,DiskGroup會在後臺自動作reblance操做,將數據均攤到每一塊磁盤上。
1)V$ASM_OPERATION
此視圖能夠查看DiskGroup後臺Reblance的速度以及好視狀況。
2)V$ASM_DISK_STAT
此視圖能夠查看磁盤和其使用度量信息,查看磁盤狀態
注意:Reblancing的速度與asm_power_limit參數有關,默認值爲1。
官方解釋爲:
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.
修改ASM_POWER_LIMIT方法,其取值範圍爲0~11。
(1)ALTER SESSION SET ASM_POWER_LIMIT=2;
(2)ALTER SYSTEM SET ASM_POWER_LIMIT=2;
(7)最關鍵的一步也是最容易出問題的
執行往DG中添加磁盤命令以後,必定要在每一個節點上檢查SID_ALERT.log日誌,這一步很關鍵,也是最容易出問題的。通常覺得,添加磁盤的命令執行成功了,就大功告成了,有時間就是一丁點的粗枝大葉,就釀造了一場事故。作DBA必定要萬分謹慎並具備縝密的思惟。
在ALERT日誌中能夠看到數據庫的報警信息以及警告信息,若是ALERT日誌一切正常,表名以前操做無誤,即可以回家睡覺了。
總結:
DBA須要縝密的思惟以及過硬的功底,數據庫良好的備份是基礎。作事要萬分當心,一時的誤操做可能帶來災難性的後果。