Task:从一个 ASM 磁盘组中剔除一块盘,加入到另一个 ASM 磁盘组。
环境:AIX6.1 + Oracle RAC 11.2.0.3 前期准备:1. 查看 DG 磁盘组空间情况:
- --查看DG磁盘组空间情况:
- ASMCMD> lsdg
- StateTypeRebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_filesNameMOUNTED EXTERN N512 4096 1048576 9728000 19046 0 19046 0N DATADG/
- MOUNTED EXTERN N512 4096 1048576 3584000 1261514 0 1261514 0N RECOVERYDG/
2. 查看 ASM 磁盘信息:
- --查看ASM磁盘信息
- ASMCMD> lsdsk -k
- Total_MB Free_MB OS_MB Name Failgroup Failgroup_Type Library Label UDID Product Redund Path512000 950 512000DATADG_0007 DATADG_0007 REGULAR System UNKNOWN/dev/rhdisk23512000 945 512000DATADG_0008 DATADG_0008 REGULAR System UNKNOWN/dev/rhdisk24512000 953 512000DATADG_0009 DATADG_0009 REGULAR System UNKNOWN/dev/rhdisk25512000 948 512000DATADG_0011 DATADG_0011 REGULAR System UNKNOWN/dev/rhdisk26512000 948 512000DATADG_0012 DATADG_0012 REGULAR System UNKNOWN/dev/rhdisk27512000 953 512000DATADG_0020 DATADG_0020 REGULAR System UNKNOWN/dev/rhdisk28512000 949 512000DATADG_0021 DATADG_0021 REGULAR System UNKNOWN/dev/rhdisk29512000 948 512000DATADG_0022 DATADG_0022 REGULAR System UNKNOWN/dev/rhdisk30512000 947 512000DATADG_0023 DATADG_0023 REGULAR System UNKNOWN/dev/rhdisk31512000 946 512000DATADG_0024 DATADG_0024 REGULAR System UNKNOWN/dev/rhdisk32512000 957 512000DATADG_0025 DATADG_0025 REGULAR System UNKNOWN/dev/rhdisk33512000 950 512000DATADG_0026 DATADG_0026 REGULAR System UNKNOWN/dev/rhdisk34512000 956 512000DATADG_0027 DATADG_0027 REGULAR System UNKNOWN/dev/rhdisk35512000 946 512000DATADG_0028 DATADG_0028 REGULAR System UNKNOWN/dev/rhdisk36512000 950 512000DATADG_0029 DATADG_0029 REGULAR System UNKNOWN/dev/rhdisk37512000 178001 512000RECOVERYDG_0006 RECOVERYDG_0006 REGULAR System UNKNOWN/dev/rhdisk38512000 177979 512000RECOVERYDG_0007 RECOVERYDG_0007 REGULAR System UNKNOWN/dev/rhdisk39512000 177968 512000RECOVERYDG_0008 RECOVERYDG_0008 REGULAR System UNKNOWN/dev/rhdisk40512000 177984 512000RECOVERYDG_0009 RECOVERYDG_0009 REGULAR System UNKNOWN/dev/rhdisk41512000 177983 512000RECOVERYDG_0010 RECOVERYDG_0010 REGULAR System UNKNOWN/dev/rhdisk42512000 177984 512000RECOVERYDG_0011 RECOVERYDG_0011 REGULAR System UNKNOWN/dev/rhdisk43512000 939 512000DATADG_0000 DATADG_0000 REGULAR System UNKNOWN/dev/rhdisk44512000 1288 512000DATADG_0001 DATADG_0001 REGULAR System UNKNOWN/dev/rhdisk45512000 1286 512000DATADG_0002 DATADG_0002 REGULAR System UNKNOWN/dev/rhdisk46512000 1287 512000DATADG_0003 DATADG_0003 REGULAR System UNKNOWN/dev/rhdisk47512000 177965 512000RECOVERYDG_0000 RECOVERYDG_0000 REGULAR System UNKNOWN/dev/rhdisk48
实施步骤:
从 RECOVERYDG 剔除 / dev/rhdisk38,对应信息:
- 512000 178001 512000RECOVERYDG_0006 RECOVERYDG_0006 REGULAR System UNKNOWN/dev/rhdisk38
查询 asm 磁盘组中的 asm 磁盘信息:
- SQL>selectdisk_number, state,name, total_mb, free_mb from v$asm_diskwheregroup_number =2;
- DISK_NUMBER STATENAMETOTAL_MB FREE_MB
- ----------- ------------------------ ------------------------------------------------------------------------------------------ ---------- ----------6NORMAL RECOVERYDG_0006512000 177536
- 7NORMAL RECOVERYDG_0007512000 177514
- 8NORMAL RECOVERYDG_0008512000 177503
- 9NORMAL RECOVERYDG_0009512000 177520
- 10NORMAL RECOVERYDG_0010512000 177520
- 11NORMAL RECOVERYDG_0011512000 177521
- 0NORMAL RECOVERYDG_0000512000 177501
- 7rows selected.
删除计划剔除的磁盘:
- sqlplus /assysasmSQL> alter diskgroupRECOVERYDGdrop diskRECOVERYDG_0006;
等待同步完成
select * from v$asm_operation;select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 2;
- 16:31:05SQL>selectdisk_number, state,name, total_mb, free_mb from v$asm_diskwheregroup_number =2;
- DISK_NUMBER STATENAMETOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------6DROPPING RECOVERYDG_0006512000 180387
- 7NORMAL RECOVERYDG_0007512000 176893
- 8NORMAL RECOVERYDG_0008512000 176879
- 9NORMAL RECOVERYDG_0009512000 176899
- 10NORMAL RECOVERYDG_0010512000 176897
- 11NORMAL RECOVERYDG_0011512000 176896
- 0NORMAL RECOVERYDG_0000512000 176874
- 16:56:44SQL> /
- DISK_NUMBER STATENAMETOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------7NORMAL RECOVERYDG_0007512000 120678
- 8NORMAL RECOVERYDG_0008512000 120684
- 9NORMAL RECOVERYDG_0009512000 120689
- 10NORMAL RECOVERYDG_0010512000 120681
- 11NORMAL RECOVERYDG_0011512000 120691
- 0NORMAL RECOVERYDG_0000512000 120690
- 6rows selected.
alert.log 也会有对应的日志记录:
- Thu Apr13 16:57:02 2017NOTE: disk6(RECOVERYDG_0006)in group 2(RECOVERYDG)isofflineforreads
- NOTE: disk6(RECOVERYDG_0006)in group 2(RECOVERYDG)isofflineforwrites
- SUCCESS:diskRECOVERYDG_0006(6.2744176951) droppedfromdiskgroup RECOVERYDG
将 / dev/rhdisk38 加入到 DATADG:
- alter diskgroupDATADGadddisk'/dev/rhdisk38'rebalancepower 7;
查看 rebalance 情况:select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 1;
- 16:59:56SQL>selectdisk_number, state,name, total_mb, free_mb from v$asm_diskwheregroup_number =1;
- DISK_NUMBER STATENAMETOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------7NORMAL DATADG_0007512000 1021
- 8NORMAL DATADG_0008512000 1016
- 9NORMAL DATADG_0009512000 1024
- 11NORMAL DATADG_0011512000 1019
- 12NORMAL DATADG_0012512000 1020
- 20NORMAL DATADG_0020512000 1025
- 21NORMAL DATADG_0021512000 1020
- 22NORMAL DATADG_0022512000 1020
- 23NORMAL DATADG_0023512000 1018
- 24NORMAL DATADG_0024512000 1017
- 25NORMAL DATADG_0025512000 1029DISK_NUMBER STATENAMETOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------26NORMAL DATADG_0026512000 1021
- 27NORMAL DATADG_0027512000 1028
- 28NORMAL DATADG_0028512000 1018
- 29NORMAL DATADG_0029512000 1021
- 4NORMAL DATADG_0004512000 510647
- 0NORMAL DATADG_0000512000 1011
- 1NORMAL DATADG_0001512000 1356
- 2NORMAL DATADG_0002512000 1354
- 3NORMAL DATADG_0003512000 1355
- 20rows selected.
alert.log 同样也有日志记录:
- Thu Apr13 16:59:542017SUCCESS:disk DATADG_0004(4.2744176966)added to diskgroup DATADG
等待同步完成:
- select* from v$asm_operation;GROUP_NUMBEROPERA STAT POWER ACTUAL SOFAR EST_WORK EST_RATE EST_MINUTES ERROR_CODE
- ------------ ----- ---- ---------- ---------- ---------- ---------- ---------- ----------- --------------------------------------------1REBAL RUN7 7 10833 492997 7195 67Elapsed:00:00:00.46
- 17:00:49SQL>
可以在同步的期间根据实际业务需求调整 rebalance 的级别:
- 17:04:59SQL> alter diskgroup datadg rebalance power5;
- Diskgroup altered.17:06:34SQL>select*fromv$asm_operation;
- GROUP_NUMBER OPERA STAT POWER ACTUAL SOFAR EST_WORK EST_RATE EST_MINUTES ERROR_CODE
- ------------ ----- ---- ---------- ---------- ---------- ---------- ---------- ----------- --------------------------------------------1REBAL RUN5 5 11106 240895 6817 33Elapsed:00:00:00.46
最后同步完成,上述查询将不会有结果输出。
最后可以查看下 DG 磁盘组空间情况:
- --查看DG磁盘组空间情况
- ASMCMD> lsdg
- StateTypeRebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_filesNameMOUNTED EXTERN Y512 4096 1048576 10240000 531040 0 531040 0N DATADG/
- MOUNTED EXTERN N512 4096 1048576 3072000 713616 0 713616 0N RECOVERYDG/
- ASMCMD>
至此,整个 ASM 磁盘组的删盘加盘实施操作已经完成。
来源: http://www.linuxidc.com/Linux/2017-04/143139.htm