데이터베이스 연구실.log

데이터베이스와 인스턴스

단일 인스턴스와 RAC의 인스턴스 및 데이터베이스 대응 관계, RAC 여부를 조회하는 방법

INSTANCEDATABASERACGV$INSTANCECLUSTER_DATABASE단일 인스턴스

#핵심 요약

인스턴스 하나는 데이터베이스 하나에만 연결됨
같은 서버에 데이터베이스가 여러 개면 데이터베이스마다 인스턴스가 하나씩 필요함

RAC(Real Application Clusters)는 서로 다른 서버의 여러 인스턴스가 공유 스토리지에 있는 데이터베이스 하나에 동시에 연결된 구성임

RAC에서도 "인스턴스 하나는 데이터베이스 하나에만" 원칙은 지켜짐
완화되는 것은 반대 방향, "데이터베이스 하나는 인스턴스 하나만"임

GV$INSTANCE의 PARALLEL 열과 CLUSTER_DATABASE 파라미터로 RAC인지 단일 인스턴스인지 확인함

#개념과 동작 원리

구성 형태 인스턴스 : 데이터베이스
비클러스터(단일 인스턴스) 각 인스턴스가 로컬 스토리지의 자기 데이터베이스에 연결 1 : 1
클러스터(RAC) 여러 서버의 인스턴스가 공유 스토리지의 데이터베이스 하나에 연결 N : 1

RAC의 목적: 인스턴스 하나에 장애가 나도 나머지가 서비스를 이어가는 고가용성, 부하를 여러 인스턴스가 나누는 성능 확장

실습에서는 금융권과 대규모 커머스의 운영 데이터베이스에서 RAC를 자주 접한다고 적었음

V$ 뷰는 접속한 인스턴스 하나의 정보만, 이름 앞에 G(Global)가 붙은 GV$ 뷰는 RAC 전체 노드의 정보를 모아 보여 줌

실습에서는 Grid Infrastructure 설치 파일 안에 클러스터 소프트웨어와 ASM 소프트웨어가 들어 있다고 적었음
설치는 ASM과 Oracle Restart 단일 인스턴스 구성를 봄

#필수 명령어 또는 SQL

SQL*Plus (SYSDBA)조회만 함
SELECT instance_number, instance_name, host_name, parallel
  FROM gv$instance;

SHOW PARAMETER cluster_database

결과 해석:

구성 GV$INSTANCE 결과 CLUSTER_DATABASE
단일 인스턴스 행 1개, PARALLEL = NO FALSE
RAC(예시, 2노드) 노드마다 1행, PARALLEL = YES TRUE

수업 자료 본문은 "V$INSTANCE의 PARALLEL 열"을 조회하라고 적고 예시 SQL은 GV$INSTANCE를 썼음

#사용 조건과 주의사항

RAC 여부에 따라 기동, 종료 절차와 장애 대응이 달라지므로 낯선 서버에서는 먼저 확인함

SEO_HKabsumveritas@gmail.comBuilt with Claude Code & Codex

마지막 갱신 개인 학습 기록이며 운영 환경 적용 전 공식 문서 확인 필요

두 글자 이상 입력, 위아래 화살표로 이동하고 Enter로 열기