Oracle Database Admin/Oracle Database

ASM Disk 추가하기

다소곳한 직장인 DBA 일생 기록 2025. 3. 16. 16:45

 

Oracle 에서 제공하는 oracle asm library rpm 다운로드

(Oracle ASMLib Downloads for RHEL7)

https://www.oracle.com/linux/downloads/linux-asmlib-rhel7-downloads.html

 

Oracle ASMLib Downloads for Red Hat Enterprise Linux 7

Oracle ASMLib Downloads for Red Hat Enterprise Linux 7 Note: All ASMLib installations require the oracleasmliband oracleasm-supportpackages appropriate for their machine. The 'oracleasmlib' and 'oracleasm-support' packages are available for download at the

www.oracle.com

 

  • ASM Diskgroup 사용량 조회
select GROUP_NUMBER GRP_NUM
     , NAME
     , SECTOR_SIZE
     , BLOCK_SIZE
     , ALLOCATION_UNIT_SIZE AU_SIZE
     , STATE
     , TYPE
     , TOTAL_MB/1024                                    as "TOTAL_GB"
     , FREE_MB/1024                                     as "FREE_GB"
     , ROUND((TOTAL_MB - FREE_MB)/1024)                 as "USED_GB"
     , ceil(((TOTAL_MB-FREE_MB)/TOTAL_MB)*100) || ' %'  as "USAGE(%)"
from V$ASM_DISKGROUP;

   GRP_NUM NAME         TOTAL_GB    FREE_GB    USED_GB USAGE(%)
---------- ---------- ---------- ---------- ---------- ----------
         1 DATA         7167.964    317.772   6850.191 96 %
         2 RECO         1023.994     791.81    232.185 23 %
         3 DG              49.98       .918     49.063 99 %

 

 

  • 추가할 디스크 확인
su - root

■ 추가한 lv 확인(용량 확인)
fdisk -l /dev/mapper/ndata2T_67
fdisk -l /dev/mapper/ndata2T_68

■ 멀티패스확인(RAC 경우 모든 노드에서 STATUS=active 체크)
multipath -l /dev/mapper/ndata2T_67
multipath -l /dev/mapper/ndata2T_68


■ asm disk 정보 확인
oracleasm listdisks

■ asm disk별 상세 정보 확인
oracleasm querydisk -p /dev/oracleasm/disks/DATA021

-- 디스크 확인(사용 여부 체크)
oracleasm querydisk /dev/mapper/ndata2T_67p1
oracleasm querydisk /dev/mapper/ndata2T_68p1
oracleasm querydisk /dev/mapper/ndata2T_69p1

-- 미사용 디스크 확인 시
$ oracleasm querydisk /dev/mapper/ndata2T_69p1
Device "/dev/mapper/ndata2T_69p1" is not marked as an ASM disk

 

  • ASM 디스크 추가
su - root

-- Disk 추가 
oracleasm createdisk DATADISK17 /dev/mapper/disk17p1
oracleasm createdisk DATADISK18 /dev/mapper/disk18p1

-- Disk 추가 후 RAC 경우 반대 노드에서 수행
-- 모든 노드에 디스크가 정상적으로 인식되었는지 확인

oracleasm scandisks
oracleasm listdisks
  • ASM Diskgroup 추가
-- 여러 디스크 추가 시, 하나의 DDL 문으로 추가해야 불필요한 rebalance I/O 가 없다.
ALTER DISKGROUP DATA ADD DISK '/dev/oracleasm/disks/DATA016'
,'/dev/oracleasm/disks/DATA017'
,'/dev/oracleasm/disks/DATA018'
,'/dev/oracleasm/disks/DATA019'
,'/dev/oracleasm/disks/DATA020'
,'/dev/oracleasm/disks/DATA021' 
REBALANCE POWER 2;

 

 

  • Disk Rebalancing
    • ASMCMD 명령어에서 조회
su - oragrid
$ asmcmd
$ lsop
  • v$asm_operation 뷰 조회
$ su - oragrid
$ sqlplus "/as sysasm"
set lines 555 pages 555
col ERROR_CODE for a16
select inst_id,
       group_number,
       operation,
       state,
       power,
       actual,
       sofar,
       est_work,
       round( sofar / decode( est_work, 0, 1, est_work ) * 100 ) as work_rt,
       est_rate,
       est_minutes,
       error_code
from   gv$asm_operation ;

 

 

반응형