본문 바로가기

데이터베이스4

DB - 백업 복구 WAL 로그 백업과 복구 (WAL, REDO·UNDO, 체크포인트)은행 시스템이 입금 처리 도중 정전으로 멈췄다고 하자. 돈은 빠져나갔는데 입금 기록이 디스크에 닿기 전이었다면, 그 돈은 어디로 사라질까. 데이터베이스가 신뢰받는 이유는 바로 이런 장애 상황에서도 데이터를 한 푼도 잃지 않고, 멈춘 지점에서 정확히 복구하는 능력에 있다. 그 능력의 핵심 엔진이 로그 기반 복구이며, 그중에서도 거의 모든 현대 데이터베이스가 쓰는 기법이 WAL(Write-Ahead Logging)이다. 본 글은 트랜잭션 장애 복구의 원리, WAL의 핵심 규칙, REDO와 UNDO의 차이, 그리고 복구 시간을 줄이는 체크포인트를 세심하게 정리한다(출처: PostgreSQL 공식 문서 — Write-Ahead Logging (WAL)). 제.. 2026. 5. 26.
DB - 뷰, 저장 프로시저, 트리거 뷰와 프로시저 (트리거, 저장 프로시저, 캡슐화)데이터베이스는 단순히 데이터를 담는 창고가 아니라, 그 안에서 로직을 실행하는 작은 실행 환경이기도 하다. 복잡한 조인 쿼리를 매번 다시 쓰지 않도록 이름 붙여 저장하는 뷰, 여러 SQL 문을 묶어 함수처럼 호출하는 저장 프로시저, 그리고 특정 사건이 일어날 때 자동으로 작동하는 트리거 — 이 세 가지는 애플리케이션 코드로 흩어질 로직을 데이터베이스 안에 캡슐화하는 도구다. 본 글은 뷰의 추상화와 보안 효과, 저장 프로시저의 성능·재사용 이점, 그리고 트리거의 자동화와 그 위험성을 세심하게 정리한다(출처: 위키백과 — View (SQL)). 제가 데이터베이스 수업에서 같은 5단 조인 쿼리를 여러 화면에서 복사해 쓰다가 컬럼 하나가 바뀌자 모든 쿼리를 찾아 .. 2026. 5. 25.
DB - 정규화, 함수종속, BCNF 정규화 (함수 종속, 이상 현상, BCNF)학생 성적 테이블 하나에 학생 이름·학과·학과사무실·과목·점수를 전부 욱여넣으면 처음엔 편하다. 그런데 한 학생이 다섯 과목을 들으면 그 학생의 학과사무실 정보가 다섯 번 중복 저장되고, 학과사무실이 이전하면 그 다섯 줄을 모두 고쳐야 하며, 한 줄이라도 빠뜨리면 데이터가 서로 모순된다. 이렇게 잘못 설계된 테이블이 일으키는 문제를 이상 현상(anomaly)이라 하고, 이를 함수 종속을 기준으로 테이블을 쪼개 제거하는 체계적 절차가 정규화(Normalization)다. 본 글은 이상 현상의 세 종류, 함수 종속이라는 핵심 개념, 그리고 제1정규형부터 BCNF까지의 단계를 세심하게 정리한다(출처: 위키백과 — Database normalization). 제가 데이.. 2026. 5. 25.
정보처리기사 필기 - 데이터베이스 구축 기초 데이터베이스 설계 (3단계, 스키마, 독립성)데이터베이스를 처음부터 구축한다는 것은 단순히 테이블 몇 개를 생성하는 작업이 아니다. 비즈니스 요구사항을 추출해 그것을 추상적인 모델로 그려내고, 다시 관계형 모델로 변환한 뒤, 마지막으로 실제 저장 구조까지 결정하는 일련의 체계적 절차를 거쳐야 한다. 이 과정의 표준 절차가 바로 데이터베이스 설계의 3단계이며, 그 결과물인 데이터베이스의 논리적·물리적 구조를 표현하는 도구가 ANSI/SPARC가 1975년에 제정한 3계층 스키마이다(출처: 위키백과 ANSI-SPARC). 두 개념은 데이터베이스 분야의 가장 기초적이면서도 가장 자주 출제되는 핵심 주제로, 정보처리기사 시험에서도 매회 빠지지 않고 등장한다. 제가 학교 데이터베이스 수업에서 처음 이 두 개념을 .. 2026. 5. 2.

소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 블로그 이름