debian 8 에서 postgresql 9.5 컴 파일 설정 pgpool - II - 3.5
5178 단어 영어.
1. postgresql 이 접근 할 수 있 는 (원 격), postgres 사용자 비밀번호 가 수정 되 었 는 지 확인 하 십시오. 그렇지 않 으 면 pgpool 에서 검증 할 수 없습니다.
2. 설치 에 필요 한 설치 패키지, pgxs, pcp, apt - get install postgresql - server - dev - 9.5, 그렇지 않 으 면 pgxs 의 오 류 를 보고 합 니 다.
참고:
중국어 (다행히 아주 새 롭 습 니 다):http://pgpool.projects.pgfoundry.org/pgpool-II/doc/pgpool-zh_cn.html
영어 (홈 페이지):http://www.pgpool.net/docs/latest/pgpool-en.html#install
다운로드:http://pgpool.net/mediawiki/index.php/Downloads
설정:
1. tar zxvf 압축 해제,. / configure 컴 파일
기본 값 이 아 닌 값 이 필요 하 다 면 다음 옵션 을 설정 할 수 있 습 니 다.
--prefix=path
pgpool - II 의 바 이 너 리 프로그램 과 문서 가 이 디 렉 터 리 에 설 치 됩 니 다.기본 값 /usr/local
--with-pgsql=path
PostgreSQL 의 클 라 이언 트 라 이브 러 리 에 설 치 된 최상 위 디 렉 터 리 입 니 다.기본 값 pg_config
제공 --with-openssl
pgpool - II 프로그램 은 OpenSSL 을 지원 합 니 다.기본적으로 OpenSSL 지원 을 사용 하지 않 습 니 다.--enable-sequence-lock
pgpool - II 3.0 시리즈 에 insert 사용lock 호 환.pgpool - II 는 시퀀스 표 의 한 줄 에 자 물 쇠 를 추가 합 니 다.PostgreSQL 8.2 또는 2011 년 6 월 이후 발 표 된 버 전 은 이러한 잠 금 방법 을 사용 할 수 없습니다.--enable-table-lock
pgpool - II 2.2 와 2.3 시리즈 에서 insert 사용lock 호 환.pgpool - II 는 삽 입 된 시계 에 자 물 쇠 를 추가 합 니 다.이 자 물 쇠 는 VACUUM 과 충돌 하여 폐기 되 었 다.2、 make、make install
3, 설치 pgpoolregclass
PostgreSQL 8.0 또는 그 이후 버 전 을 사용 하고 있다 면 방문 해 야 할 PostgreSQL 에 pgpool 을 설치 하 는 것 을 강력 히 추천 합 니 다.regclass 함 수 는 pgpool - II 내부 에서 사용 되 기 때 문 입 니 다.이렇게 하지 않 으 면 서로 다른 schema 에서 같은 표 이름 을 처리 하 는 데 문제 가 생 길 수 있 습 니 다 (임시 표 는 문제 가 되 지 않 습 니 다).
cd pgpool-II-x.x.x/sql/pgpool-regclass
make
make install
psql -f pgpool-regclass.sql template1
pgpool - II 를 통 해 접근 하 는 데이터베이스 마다 pgpool - regclass. sql 을 실행 해 야 합 니 다."psql - f pgpool - regclass. sql template 1" 을 실행 한 후 만 든 데이터베이스 에서 이렇게 할 필요 가 없습니다. 이 템 플 릿 데이터 베 이 스 는 새 데이터베이스 로 복 제 될 것 이기 때 문 입 니 다.
4 、 insert 구축자물쇠 시계
복사 모드 에서 insert 를 사용 했다 면lock, pgpool 구축 을 강력 추천 합 니 다.catalog.insert_lock 표, 상호 배척 에 사용 합 니 다.지금까지 insertlock 은 일 도 할 수 있어 요.그러나 이 경우 pgpool - II 는 삽 입 된 목표 표를 잠 가 야 합 니 다.이런 행 위 는 pgpool - II 2.2 와 2.3 시리즈 와 유사 하 다.시계 잠 금 은 VACUUM 과 충돌 하기 때문에 INSERT 작업 이 오래 기다 릴 수 있 습 니 다.
cd pgpool-II-x.x.x/sql
psql -f insert_lock.sql template1( , , sql )
pgpool - II 를 통 해 방문 하 는 데이터베이스 마다 insert 를 실행 해 야 합 니 다.lock.sql。"psql - f insert lock. sql template 1" 을 실행 한 후 만 든 데이터베이스 에서 이렇게 할 필요 가 없습니다. 이 템 플 릿 데이터 베 이 스 는 새 데이터베이스 로 복 제 될 것 이기 때 문 입 니 다.
5. pcp. conf 설정 (사실 여기 사용자 이름 은 데이터베이스 자체 만 사용 하면 됩 니 다. 비밀 번 호 는 select * from pg shadow 에서 찾 은 md5 입 니 다. 아래 방법 은 암호 화 알고리즘 이 잘못된 것 같 습 니 다)
pgpool - II 는 제어 인터페이스 가 있 습 니 다. 관리 자 는 pgpool - II 의 상태 정 보 를 원 격 으로 수집 하거나 pgpool - II 프로 세 스 를 종료 할 수 있 습 니 다.
pcp.conf
이 인터페이스 인증 에 사용 할 사용자 / 비밀번호 파일 입 니 다.모든 모드 를 먼저 설정 해 야 합 니 다. pcp.conf
서류하나 $prefix/etc/pcp.conf.sample
파일 이 pgpool - II 에 설치 되 었 을 때 만 들 어 졌 습 니 다.이 파일 이름 바 꾸 기 pcp.conf
원 하 는 사용자 이름과 비밀 번 호 를 추가 합 니 다.cp $prefix/etc/pcp.conf.sample $prefix/etc/pcp.conf
빈 줄 이나 '
#
' 로 시작 하 는 줄 은 주석 으로 여 겨 져 무시 된다.사용자 이름과 해당 하 는 비밀 번 호 는 다음 과 같은 방식 으로 한 줄 로 써 야 합 니 다.username:[password encrypted in md5]
[password encrypted in md5]
통과 가능 $prefix/bin/pg_md5
명령 생 성.pg_md5 -p
password: <your password>
혹은
./pg_md5 foo
acbd18db4cc2f85cedef654fccc4a4d8
6. pgpool. conf 설정
앞서 말 했 듯 이 모든 조작 모드 는
pgpool.conf
파일 에 대응 하 는 설정 항목 이 있 습 니 다.한 개 $prefix/etc/pgpool.conf.sample
파일 이 pgpool - II 에 설치 되 었 을 때 만 들 어 졌 습 니 다.이 파일 이름 바 꾸 기 pgpool.conf
내용 을 수정 합 니 다.cp $prefix/etc/pgpool.conf.sample $prefix/etc/pgpool.conf
#
listen_addresses: *
port: 9999, 5432
pcp_listen_addresses: *
backend_hostname0: host
backend_port0:
backend_data_directory0:
pid_file_name:( /var/run/pgpool , BUG, , /etc/rc.local mkdir , )
connection_life_time = 450# , 。 。 0,
client_idle_limit = 300# sql
7. 기타
a. 자동 시작 설정
vim /etc/rc.local
pgpool -f /usr/local/etc/pgpool.conf -F /usr/local/etc/pcp.conf -a /usr/local/etc/pool_hba.conf
b. 닫 기
pgpool -f /usr/local/etc/pgpool.conf -F /usr/local/etc/pcp.conf -a /usr/local/etc/pool_hba.conf stop
# , 。。。 Kill pid ,
#
pgpool -m fast stop# , !
c. DEBUG 모드
pgpool -f /usr/local/etc/pgpool.conf -F /usr/local/etc/pcp.conf -a /usr/local/etc/pool_hba.conf -dn
d. 로그 열기 로그 /etc/rsyslog.conf 아래 줄 에 가입 local0.* /var / log / pgpool. log 재 부팅 rsyslog 복무 /etc/init.d/rsyslog restartpgpool.conf 다음 줄 설정 log_destination = 'syslog' 비고: 여기 syslog。