[PostgreSQL] 백업 방법 - 파일 시스템 백업 방법
- Database(데이터베이스)
- 2022. 6. 26. 10:38
참고
개요
- PostgreSQL 에서 제공하는 백업 방법에 대해서 조사 및 PoC 진행합니다.
파일 시스템 백업 방법
- 파일 시스템 백업 방법은 말 그대로 데이터파일을 압축해서 백업하는 방식입니다.
- 백업 전 PostgreSQL 을 중지 해야 합니다.
> tar -cvzf PostgreSQL.tar.gz /var/lib/postgresql
파일시스템 복원 방법
- 압축한 파일을 PostgreSQL 데이터경로에 풀어줍니다.
- 이후에 Database 를 재구동 합니다.
- 만약, 복원경로가 변경되는 경우에는
pg_ctl
명령러를 사용하여 기본 디렉터리를 변경해 줍니다.
> tar -xvzf PostgreSQL.tar.gz -C /var/lib/postgresql
파일 시스템 백업 방식의 단점
- 파일 시스템을 정상적으로 백업받기 위해서는, 반드시 데이터베이스 서버를 중지해야 합니다.
- 모든 클라이언트 접속을 막더라도, tar 명령이 파일 시스템의 단위적 스냅샷을 지원하지 않으며 서버에서 사용하는 버퍼에 대한 정보도 정확하게 반영할 수 없기 떄문입니다.
- 특정 데이터베이스에 사용하는 파일만 백업을 받고 싶어도, 트랜잭션 커밋과 같이 공통파일로 관리되고 있는 파일 때문에 부분 백업이 불가능합니다. (무조건 전체 백업 진행 해야 함)
파일 시스템 백업 방식의 주의점
- 만약 파일시스템에서 스냅샷 기능을 완벽하게 제공한다면(tar 하는 순간 시점을 기억), 데이터베이스 서버가 운영 중일 때도 백업이 가능합니다.
- 다만 이 경우에는 운영 중 상태에서 백업이 진행되었기 때문에, 백업 시점은 운영 시점의 이전 시점이 됩니다.
- 따라서 백업존으로 서버를 실행하려는 경우 현재 구성된 파일들을 정리해야 합니다.
- 만약 백업 시작 전에 CHECKPOINT 명령을 실행했고, 백업 작업 중간에 생긴 WAL 로그 파일을 보관하고 있다면 이 WAL 로그 파일을 사용하여 최신 시점으로 복구가 가능합니다.
728x90
'Database(데이터베이스)' 카테고리의 다른 글
[PostgreSQL] pgAdmin Docker 로 실행 후, Login Sessing 유지하는 방법 (0) | 2022.07.05 |
---|---|
[PostgreSQL] 백업 방법 - 아카이브 모드 백업 (0) | 2022.06.26 |
[PostgreSQL] PostgreSQL 백업 방법 - SQL 덤프 백업 (0) | 2022.06.26 |
[PostgreSQL] PostgreSQL Docker-Compose TimeZone 설정 (0) | 2022.06.24 |
[PostgreSQL] PostgreSQL 시간 설정 (0) | 2022.06.24 |
이 글을 공유하기