DBAtlas · 데이터베이스 운영 아틀라스

SQL로 ASM 디스크 상태, 오류 카운터, 후보 디스크 확인

OracleASM

명령어

-- On the ASM instance (or from a DB instance; there only the disk groups in use are visible):
SELECT dg.name AS diskgroup, d.disk_number, d.name AS disk_name, d.path,
       d.header_status, d.mount_status, d.mode_status, d.state,
       d.failgroup, d.total_mb, d.free_mb, d.read_errs, d.write_errs
FROM   v$asm_disk d
LEFT   JOIN v$asm_diskgroup dg ON dg.group_number = d.group_number
ORDER  BY dg.name, d.disk_number;

-- Disk group summary: AU size, offline disks, voting files:
SELECT name, type, allocation_unit_size/1048576 AS au_mb,
       compatibility, database_compatibility, offline_disks, voting_files
FROM   v$asm_diskgroup;

-- Databases using this ASM:
SELECT instance_name, db_name, status, software_version, compatible_version
FROM   v$asm_client;

하는 일

각 디스크의 header_status(MEMBER, CANDIDATE, PROVISIONED, FORMER), mount/mode 상태, failgroup, 읽기/쓰기 오류 카운터, 디스크 그룹별 offline 디스크 수, ASM 클라이언트를 나열한다.

사용 시점

디스크 추가 전 새 LUN이 CANDIDATE/PROVISIONED로 보이는지 확인할 때, 디스크 장애 시 어느 디스크가 OFFLINE인지와 I/O 오류를 확인할 때.

주의

읽기 전용. v$asm_disk는 호출할 때마다 디스크 discovery를 수행하므로 디스크가 많은 시스템에서 느리다. 빈번한 모니터링에는 v$asm_disk_stat을 사용한다(discovery 없음, 새 디스크는 보이지 않음). header_status가 MEMBER인 디스크를 FORCE로 다른 디스크 그룹에 추가하지 않는다. 기존 데이터가 파괴된다.

DBAtlas에서 열기 →

관련 항목