MariaDB 백업은 복원으로 검증한다 — 격리 DB 복원 리허설과 무결성 확인표
도입 dump 명령이 성공하고 파일이 존재해도 그 파일이 원하는 시점과 범위의 데이터를 복원한다는 보장은 없다. 백업은 격리된 환경에 복원하고 구조·데이터·애플리케이션 읽기를 확인해야 운영 가능한 복구 수단이 ...
쿼리 검색 결과: 28개
도입 dump 명령이 성공하고 파일이 존재해도 그 파일이 원하는 시점과 범위의 데이터를 복원한다는 보장은 없다. 백업은 격리된 환경에 복원하고 구조·데이터·애플리케이션 읽기를 확인해야 운영 가능한 복구 수단이 ...
도입 Deadlock은 두 트랜잭션이 서로 상대방의 잠금 해제를 기다리는 순환 대기다. InnoDB는 이를 감지하면 한 트랜잭션을 희생시켜 오류 1213을 반환하고 다른 트랜잭션이 진행하게 한다. 재시도는...
도입 컬럼을 한 번에 바꾸면 이전 애플리케이션과 새 애플리케이션이 동시에 동작하는 배포 구간에서 한쪽이 실패할 수 있다. Expand-Contract는 호환 가능한 구조를 먼저 추가하고 사용 전환이 끝난 뒤 오...
도입 최소 권한은 GRANT 문장을 작성하는 것으로 끝나지 않는다. 애플리케이션이 필요한 작업은 성공하고, 스키마 변경·계정 관리·시스템 테이블 조회는 실패하는지 실제 계정으로 확인해야 한다. 아래 SQL은 M...
MariaDB 10.11 덤프·복원 검증 — customers 테이블로 원본과 대상 비교하기 덤프 파일이 만들어졌다는 사실만으로 복원이 제대로 끝났다고 판단할 수는 없다. 이 글은 기존 실습 이미지의 testd...
Docker Compose PHP·Nginx·MariaDB 시작 경합 — healthcheck 전후 로그로 확인하기 Docker Compose로 PHP와 MariaDB를 함께 시작하면 DB 컨테이너가 실행 중이...
도입 ALTER TABLE이 끝나지 않을 때 테이블 크기만 의심하면 원인을 놓칠 수 있다. Waiting for table metadata lock 상태라면 다른 세션의 열린 트랜잭션 때문에 DDL이 시작되지 ...
도입 서비스를 운영하다 보면 클라이언트가 직접 애플리케이션 서버에 붙지 않게 해야 하는 경우가 많다. 이때 가장 많이 쓰는 구조가 Reverse Proxy다. 앞단에서 요청을 받고, 뒤쪽 서버로 대신 전달...
데이터베이스 인덱스는 크게 Clustered Index와 Non-Clustered Index로 나뉜다. 두 인덱스는 “데이터를 어떻게 저장하고 접근하는가”에서 구조적인 차이가 있다. 이 차이를 이해하면 조회 ...
MySQL에서 사용하는 대부분의 인덱스는 B-Tree 구조로 이루어져 있다. B-Tree는 대용량 데이터에서 빠르게 값을 찾기 위해 설계된 트리 형태의 자료 구조다. 테이블 전체를 순차적으로 검색하면 데이터가...