채널톡 아이콘

Docker로 띄운 MySQL·PostgreSQL, 데이터 날리지 않고 운영하기 — 현직 DBA가 재현하는 컨테이너 DB 사고 30가지

Docker로 DB를 띄워 쓰고 있다면. down -v·prune·폴더 이름·비밀번호 환경변수·10초 종료·메모리 한도·이미지 태그·볼륨 복사 백업까지, 데이터를 날리거나 못 읽게 만드는 30가지 장면을 내 컴퓨터에서 직접 재현하고 DB 로그로 원인을 읽은 뒤, 시점 복구로 되살리는 법까지 배웁니다.

1명 이 수강하고 있어요.

난이도 중급이상

수강기한 무제한

수강 후 이런걸 얻을 수 있어요

  • 지금 쓰는 compose 파일에서 데이터가 사라지는 명령·설정(down -v, prune -a, 프로젝트 이름, 익명 볼륨, --rm)을 짚어 냅니다.

  • 비밀번호·초기화 스크립트·헬스체크처럼 '처음 한 번만' 동작하는 것들의 함정을 피합니다.

  • 강제 종료와 복구 로그를 읽고, 종료 대기 시간·메모리 한도·공유 메모리·디스크를 DB에 맞게 정합니다.

  • 시간대·문자셋(한글 깨짐)·정렬 규칙이 컨테이너에서 조용히 달라지는 지점을 확인하고 바로잡습니다.

  • 이미지 태그를 고정하고, MySQL 8.0→8.4·PostgreSQL 16→17 업그레이드를 볼륨 사본으로 리허설합니다.

  • 일관된 백업을 뜨고 복원 시간을 재며, 바이너리 로그(GTID)·WAL 아카이브로 실수 직전 시점까지 되살립니다.

"이 명령 하나가 내 DB를 날릴 수 있을까?"

Docker로 DB를 띄워 쓰고 있다면. down -v·prune·폴더 이름·비밀번호 환경변수·10초 종료·메모리 한도·이미지 태그·볼륨 복사 백업까지, 데이터를 날리거나 못 읽게 만드는 30가지 장면을 내 컴퓨터에서 직접 재현하고 DB 로그로 원인을 읽은 뒤, 시점 복구로 되살리는 법까지 배웁니다.

Docker 강의는 대부분 DB를 띄우는 데서 끝납니다. 이 강의는 그다음, 띄운 DB를 운영하다 데이터를 잃거나 못 읽게 되는 순간을 다룹니다. 모든 장면은 실제로 실행한 출력이고, 컨테이너가 아니라 DB 쪽(로그·복구 과정·파일 버전·설정 값)에서 원인을 읽습니다. 대형 커머스 현직 DBA 팀장이 운영에서 쓰는 점검 순서를 그대로 담았습니다.

이 강의를 마치면

  • 지금 쓰는 compose 파일에서 데이터가 사라지는 명령·설정(down -v, prune -a, 프로젝트 이름, 익명 볼륨, --rm)을 짚어 냅니다.

  • 비밀번호·초기화 스크립트·헬스체크처럼 '처음 한 번만' 동작하는 것들의 함정을 피합니다.

  • 강제 종료와 복구 로그를 읽고, 종료 대기 시간·메모리 한도·공유 메모리·디스크를 DB에 맞게 정합니다.

  • 시간대·문자셋(한글 깨짐)·정렬 규칙이 컨테이너에서 조용히 달라지는 지점을 확인하고 바로잡습니다.

  • 이미지 태그를 고정하고, MySQL 8.0→8.4·PostgreSQL 16→17 업그레이드를 볼륨 사본으로 리허설합니다.

  • 일관된 백업을 뜨고 복원 시간을 재며, 바이너리 로그(GTID)·WAL 아카이브로 실수 직전 시점까지 되살립니다.

이런 분께 추천합니다

  • Docker로 MySQL·PostgreSQL을 띄워 서비스·사이드 프로젝트를 운영하는 백엔드 개발자

  • Docker 입문 강의를 마치고 '운영에서는 무엇을 조심해야 하나'가 궁금한 분

  • 스타트업에서 DB까지 혼자 맡게 된 1인 운영자

  • 주니어 DBA·SRE

커리큘럼 (9섹션 · 30강 · 약 181분)

  • 섹션 1. 컨테이너 DB, 무엇이 어디에 남나 — 명령 하나로 주문이 사라졌다, 실습 환경 띄우기, 데이터는 어디에 있나

  • 섹션 2. 데이터를 지우는 명령 — stop·down·down -v·prune, 폴더 이름만 바꿨는데 빈 DB, 익명 볼륨과 --rm

  • 섹션 3. 처음 한 번만 실행되는 것 — 비밀번호를 바꿨는데 안 바뀐다, 초기화 스크립트가 반만 돌았다, 준비됐다는 거짓말

  • 섹션 4. 멈추는 방법과 복구 — docker stop 은 10초만 기다린다, 강제 종료 뒤 복구 읽기, 종료 대기 시간 정하기

  • 섹션 5. 메모리와 디스크 한도 — 메모리 제한과 OOMKilled, DB는 메모리를 어떻게 보나, PostgreSQL 공유 메모리 64MB, 디스크가 찼다

  • 섹션 6. 조용히 다른 설정 — 시간대: 컨테이너는 UTC, 한글이 깨져서 들어갔다, 이미지를 바꿨더니 정렬이 달라졌다

  • 섹션 7. 이미지 태그와 업그레이드 — 태그가 데이터를 못 읽는 날, MySQL 8.0에서 8.4로, PostgreSQL 메이저 업그레이드, 업그레이드 리허설

  • 섹션 8. 백업과 복구 — 볼륨 복사는 백업인가, 덤프 일관성, 덤프에 없는 것: 계정과 권한, 복원 시간 재기, 바이너리 로그로 실수 직전까지, WAL 아카이브로 시점 복구

  • 섹션 9. 마무리 — 포트·비밀번호와 운영 점검표

실습 환경

MySQL 8.4.13·8.0.44, PostgreSQL 17.7·16.11·17.7-alpine 공식 이미지와 가상 쇼핑몰 데이터로 30개 시나리오를 그대로 실행할 수 있는 실습 자료(ZIP)를 드립니다. 강마다 시나리오 하나, 실행하면 강의 화면과 같은 장면이 재현됩니다. 컨테이너 DB 운영 점검표를 함께 드립니다.

선수 지식

  • docker run · docker compose 를 써 본 경험

  • SQL 기본(SELECT·INSERT)

  • Docker 가 설치된 컴퓨터(메모리 6GB 이상 할당 권장)

이 강의에서 다루지 않는 것

  • Docker 기초 문법 처음부터

  • 쿠버네티스·오퍼레이터

  • 클라우드 관리형 DB(RDS 등) 구성

  • 쿼리 튜닝·실행계획

안내

슬라이드 내레이션은 합성 음성입니다. 모든 데이터는 교육용 가상 데이터이며, 숫자는 실행 환경에 따라 달라질 수 있습니다.

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • Docker로 MySQL·PostgreSQL을 띄워 서비스·사이드 프로젝트를 운영하는 백엔드 개발자

  • Docker 입문 강의를 마치고 운영에서 무엇을 조심해야 할지 궁금한 분

  • 스타트업에서 DB까지 혼자 맡게 된 1인 운영자

  • 주니어 DBA·SRE

선수 지식,
필요할까요?

  • docker run · docker compose 를 써 본 경험

  • SQL 기본(SELECT·INSERT)

  • Docker 가 설치된 컴퓨터(메모리 6GB 이상 배정 권장)

안녕하세요
데이터장인입니다.

커리어인증

20년 이상 데이터베이스와 IT 분야에서 경력을 쌓아온 데이터장인입니다. DBA 및 DB Platform 팀 매니저로 데이터베이스 플랫폼을 다루며, MySQL·PostgreSQL·Oracle·MongoDB와 SQL 튜닝, AWS·Terraform·Python을 전문 분야로 삼고 있습니다. 게임·금융·IT 서비스 분야의 경력을 바탕으로 데이터베이스와 클라우드 아키텍처를 설명합니다. 『오라클 실무튜닝 SQL 패턴 학습』과 『Oracle Pro*C 실무프로젝트 활용서』를 출간했으며, AWS Summit 2018·2019와 데이터야 놀자 2020에서 서버리스·데이터베이스 선택·멀티데이터베이스 전략을 발표했습니다. 최근에는 Bedrock LLM을 이용한 슬로우 쿼리 분석·튜닝 권고, DB 스펙 산정 자동화, DB 메타 MCP 서버와 Slack 봇을 통한 조회 흐름을 다루고 있습니다. 개발자를 위한 데이터베이스 자동화와 비개발자를 위한 AI 업무 활용을 각 과정의 대상과 목적에 맞는 실습으로 설명합니다. AI 제안을 그대로 적용하기보다 결과 동일성·실행 계획·관측 조건을 확인하고, 근거가 부족하면 보류하는 판단 기준을 전달합니다. 회사 운영 데이터와 인증값은 강의 자료에 포함하지 않습니다.

더보기

커리큘럼

전체

30개 ∙ (3시간 0분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!

데이터장인님의 다른 강의

지식공유자님의 다른 강의를 만나보세요!

비슷한 강의

같은 분야의 다른 강의를 만나보세요!

얼리버드 할인 중

₩61,600

20%

₩77,000

평생교육이용권 지원 강의