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 5763 게시물 읽기
No. 5763
segment file 크기를 어떻게 조절하는지. ^^;
작성자
이실
작성일
2004-12-27 12:44ⓒ
2004-12-27 12:59ⓜ
조회수
2,822

현재 Fedora Core3 에서 PostgreSQL 8.0 rc1을 사용하고 있습니다.

 

설치하고 보니 pg_xlog 쪽에 WAL segment file 크기가 기본 16M 로 생기더군요..

이 WAL segment file 크기를 조절하고 싶은데 메뉴얼을 찾아 보니 간단하게

WAL segment files, which are normally 16MB apiece (although the size can be altered when building PostgreSQL)

이렇게만 나와있네요..

제가 지식이 짧아서 정확히 어떤의미인지를 모르겠습니다.^^;

 

단순히 어떤 설정파일이나 initdb 옵션에 있는지? 아니면

PostgreSQL을 설치시 어떤 옵션으로 기본값인 16M를 바꾸는지

정확히 어떻게 WAL Segment file 크기를 바꾸는지 잘 모르겠습니다.

 

그럼 감사합니다.^^

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

그 16MB 크기는 PostgreSQL 서버를 만들 때, 정해집니다. 즉, 그 크기를 바꾸려면, 사용하고 있는 서버를 다시 컴파일 해야합니다.

 

영어 문장 그대로 우리말로 옮기면,

 

WAL 세그먼트 파일들.

(checkpoint_segments 변수값 설명하면서 나온 듯한데, 이 변수의 값은 이 세그먼트 파일들 갯수입니다)

이 파일은 일반적으로 하나 당 16MB 크기이며, 이 크기는 PostgreSQL 서버를 새롭게 만들 때 다른 크기로 지정할 수 있다.

 

입니다.

 

이 설정값은

 

src/include/pg_config_manual.h 파일에서

XLOG_SEG_SIZE 값으로 정의하고 있습니다.

 

이값 코멘트에서는 다음과 같이 이야기하고 있네요.

 

XLOG_SEG_SIZE  값은 WAL 세그먼트 파일의 크기이며, 이값은 2의 배수여야하고, BLCKSZ 값 (기본값이 8KB 입니다, 흔히 페이지라고 말하는 자료 I/O에 필요한 최소단위이지요)보다 커야한다. (보통 BLCKSZ 보다는 꽤 큰 크기를 사용한다 - 기본값 16MB)

 

----------

이 값을 왜 바꾸려고 하는지는 모르겠지만, 이 값을 바꾸어서 얻는 이익이 별로 없을 것 같습니다.

 

김상기(ioseph)님이 2004-12-27 13:57에 작성한 댓글입니다.

답변 정말 감사합니다.

 

WAL segment file 크기를 바꾸려는 이유는 별거 아니고

현재 사용하는 DB 데이터 갱신량이 얼마 안되어서

online 백업을 일주일에 한번 하는데 WAL 로그가 archive 되기까지

시간이 좀 오래 걸리네요 ^^;

나중에 불의의 사고로 db_xlog 디렉터리도 날라가는 상황에서

복구하려면 archive 된 로그가 조금이라도 많이 필요할거 같더라구요

그게 없으면 이건 백업 시점만 달랑 복구가 되는거 같아서리..

 

그래서 archive 되는 시간을 줄일려다 보니 PostgeSQL은

사용자가 강제로 WAL 로그를 archive 시키는 방법이 없는거 같아서요. 그래서 WAL segment를 줄이면 좀 자주 archive 되지 않을까 싶어가지고 ㅎㅎ

이유가 좀 황당하죠.? ^^;

 

분명 이런 다른 사이트도 Online 백업을 많이 받으실텐데

다른 분들 어떻게 백업 정책을 세우시는지 궁금하네요..

 

아무튼 답변 정말 감사합니다.

이실님이 2004-12-27 14:33에 작성한 댓글입니다. Edit

WAL Segment file 아카이브 이전의 모든 자료는 logfile에 들어 있을텐데 뭘 그리 염려 하시나요 ^^

김대성님이 2004-12-31 19:28에 작성한 댓글입니다. Edit

음... db file이 저장되는 디스크 볼륨과 log archive가 저장되는 디스크 볼륨이 다른 상황에서 db file이 저장되는 디스크 볼륨이 물리적으로 망가졌을 경우에 문제가 되지 않을까요? WAL log 파일은 DB file과 같은 디스크 볼륨에 저장될테니 말입니다. 결국 log archive가 있다고 하더라도 raid 같은 장애 극복 시스템이 필요한 것 같네요.

박성철(gyumee)님이 2005-01-02 02:28에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
5767윈도우XP에서 설치 질문이요... [4]
초짜
2004-12-28
3251
5765세개이상의 테이블에서 outer join은 안되나요 [4]
초보
2004-12-27
6993
5764이걸 쿼리한방으로 처리할 수 있을까요.. [1]
장현성
2004-12-27
2918
5763segment file 크기를 어떻게 조절하는지. ^^; [4]
이실
2004-12-27
2822
5762benchmark 순위 사이트 어떨까요? [2]
박성철
2004-12-27
2772
5761날짜를 밀리세컨드 형태로 넣을려구하면 어떻게 해야하나여? [1]
박진호
2004-12-26
2631
5758서브쿼리 질문 입니다. [1]
장철훈
2004-12-24
2318
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.048초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다