database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 10246 게시물 읽기
No. 10246
아카이브 wal파일 질문드립니다.
작성자
초보자
작성일
2021-04-26 14:59
조회수
1,744



안녕하세요 백업관련해서 질문드릴게 있어서 글 남깁니다.


현재 한달에 한번씩 백업을 진행중이고 하루하루 증분 백업을 하고 있습니다.


pg_basebackup 명령어로 tar 파일을 만들어 전체 데이터를 백업하고


wal 로그파일을 하루하루 쌓인것들을 폴더별로 옮겨 놓고 있습니다.


그런제 postgresql.conf 파일에 max_wal, min_ wal을 1GB, 80MB 설정하고 max_wal_segements는 32, archive_timeout은 2분으로 설정했습니다 


저는 위에처럼 설정시 용량과 segements 설정 갯수에 맞게 log파일이 만들어지는 줄 알았는데 2분에 한개씩 만음

wal파일들이 작업들의 로그들을 기록하는거라고 그러던데 모두다 가지고 있어야 할지.. 


마찬가지로 복구시에 16일날기준의 데이터를 복구한다고 치면 basebackup 후 만들어진 모든 wal파일들을 모아서 복구를 해야 할까요 아님 16일날 생성된 wal파일만 가지고 가능할까요???

이 글에 대한 댓글이 총 1건 있습니다.

백업 복구는 베이스 백업 받은 그 이후 모든 wal 조각 파일이 있어야합니다.

베이스 백업은 백업 종료시점 stop backup 시점까지만 보관합니다.


그 뒤 시간이 흘러 그 흐른 시간 만큼의 복원이 필요하면, 그 사이 따로 보관된 (아카이빙된) 모든 wal 조각파일이 있어야합니다.


한편

max_wal_segments 환경 설정 매개변수는 없습니다.

뭔가 착각한 것 같고요.


통상 백업을 위한 wal 조각 파일 백업은 데이터베이스 아카이브 기능을 이용합니다. wal 조각 파일이 다음 파일로 넘어갈 때, 그 이전 파일을 archive_command 설정으로 지정한 명령으로 다른 곳에 따로 보관합니다. 이것을 하려면, archive_mode = on 상태여야하고요.

이렇게 따로 보관된 파일을 백업 저장소에 보관하는 것입니다. 잘만들어진 archive_command 라면 바로 백업 저장소로 보내는 명령을 사용할 수도 있겠죠.


https://blog.goodusdata.com/12

페이지에서 archive 기반 복구 이야기를 친절하게 설명하고 있네요.

차근하게 읽어 보시길 바랍니다.

 

김상기(ioseph)님이 2021-04-26 21:35에 작성한 댓글입니다.
이 댓글은 2021-04-26 21:50에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
10249exception 예외처리 문의 [1]
돌멩이
2021-05-10
1854
10248pk 생성시 함수?사용 [2]
TEST
2021-05-07
1613
10247데이터 타입 문의 [6]
김성수
2021-04-27
2074
10246아카이브 wal파일 질문드립니다. [1]
초보자
2021-04-26
1744
10245특정 데이터별 상위 데이터 구하기 [1]
초보
2021-04-20
1574
10244SQLSTATE[08006] [7] timeout expired? [2]
박병호
2021-04-19
1993
10243awr에서와 같이 buffer gets 는 어떻게 확인하나요? [4]
cella
2021-04-15
1524
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.053초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다