ASM 환경에서 용량 증설을 하는 방법은 크게 2가지가 있습니다.
1. ASM DISK 추가
2. ASM DISKGROUP 추가
보통은 1번 방법으로 진행하지만 rebalance 가 필수여서 대용량 고트래픽 환경의 DB에서는
DISKGROUP를 추가하는 방법을 사용하기도 합니다.
여기서는 RAC 환경에서 DISKGROUP을 추가하는
방법 및 주의사항을 정리하였습니다.
diskgroup 추가
--# diskgroup 추가(grid 계정 sysasm으로 진행)
SQL> create diskgroup DATA02 external redundancy disk '/dev/oracleasm/disks/ASM20_4';
Diskgroup created.
Elapsed: 00:00:07.26
SQL> select group_number, name, allocation_unit_size alloc_unit_size, state, type, total_mb,usable_file_mb
from v$asm_diskgroup ;
GROUP_NUMBER NAME ALLOC_UNIT_SIZE STATE TYPE TOTAL_MB USABLE_FILE_MB
------------ ------------------------------ --------------- ----------- ------ ---------- --------------
1 DATA 4194304 MOUNTED EXTERN 61428 44604
2 OCR 4194304 MOUNTED EXTERN 10232 9852
3 DATA02 1048576 MOUNTED EXTERN 20479 20427
Elapsed: 00:00:00.05
-- DBMS에서 조회시, 신규 diskgroup state가 기존과 다르지만 datafile 추가해 주면 기존과 동일해 진다
> select group_number, name, allocation_unit_size alloc_unit_size, state, type, total_mb,usable_file_mb
from v$asm_diskgroup
GROUP_NUMBER|NAME |ALLOC_UNIT_SIZE|STATE |TYPE |TOTAL_MB|USABLE_FILE_MB|
------------+------+---------------+---------+------+--------+--------------+
1|DATA | 4194304|CONNECTED|EXTERN| 61428| 44604|
2|OCR | 4194304|MOUNTED |EXTERN| 10232| 9852|
3|DATA02| 1048576|MOUNTED |EXTERN| 20479| 20427|
3 row(s) fetched.
> ALTER TABLESPACE USERS ADD DATAFILE '+DATA02' SIZE 1G AUTOEXTEND OFF
0 row(s) modified.
> select group_number, name, allocation_unit_size alloc_unit_size, state, type, total_mb,usable_file_mb
from v$asm_diskgroup
GROUP_NUMBER|NAME |ALLOC_UNIT_SIZE|STATE |TYPE |TOTAL_MB|USABLE_FILE_MB|
------------+------+---------------+---------+------+--------+--------------+
1|DATA | 4194304|CONNECTED|EXTERN| 61428| 44604|
2|OCR | 4194304|MOUNTED |EXTERN| 10232| 9852|
3|DATA02| 1048576|CONNECTED|EXTERN| 20479| 19394|
3 row(s) fetched.
신규 diskgroup 다른 노드에서 꼭 mount 해줄 것(주의)
-- crsctl로 리소스 현황을 보면 2번 노드에서는 offline 상태
[root@svr1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.chad
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.net1.network
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.ons
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.proxy_advm
OFFLINE OFFLINE svr1 STABLE
OFFLINE OFFLINE svr2 STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE ONLINE svr1 STABLE
2 ONLINE ONLINE svr2 STABLE
3 ONLINE OFFLINE STABLE
ora.DATA.dg(ora.asmgroup)
1 ONLINE ONLINE svr1 STABLE
2 ONLINE ONLINE svr2 STABLE
3 OFFLINE OFFLINE STABLE
ora.DATA02.dg(ora.asmgroup)
1 ONLINE ONLINE svr1 STABLE
2 OFFLINE OFFLINE STABLE
3 OFFLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
-- 2번 노드에서 sysasm 접속
sqlplus / as sysasm
SQL> ALTER DISKGROUP DATA02 mount ;
Diskgroup altered.
[root@svr1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.chad
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.net1.network
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.ons
ONLINE ONLINE svr1 STABLE
ONLINE ONLINE svr2 STABLE
ora.proxy_advm
OFFLINE OFFLINE svr1 STABLE
OFFLINE OFFLINE svr2 STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE ONLINE svr1 STABLE
2 ONLINE ONLINE svr2 STABLE
3 ONLINE OFFLINE STABLE
ora.DATA.dg(ora.asmgroup)
1 ONLINE ONLINE svr1 STABLE
2 ONLINE ONLINE svr2 STABLE
3 OFFLINE OFFLINE STABLE
ora.DATA02.dg(ora.asmgroup)
1 ONLINE ONLINE svr1 STABLE
2 ONLINE ONLINE svr2 STABLE
3 OFFLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
댓글 쓰기