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 7694 게시물 읽기
No. 7694
solaris 10 pgpool-II 접속문제
작성자
김태규
작성일
2009-04-20 12:55
조회수
9,762

설정 후 포트 9999로 접속할려면 


psql: 서버가 갑자기 연결을 닫았음

        이런 처리는 클라이언트의 요구를 처리하는 동안이나

        처리하기 전에 서버가 갑자기 종료되었음을 의미함


메시지가 뜹니다


양쪽 노드를 포트 5432로는 잘 접속이 되구요 무슨 문제일까요? pgpool.conf설정을 봐도 잘못된게 없는듯 한데...


#

# pgpool-II configuration file sample

# $Header: /cvsroot/pgpool/pgpool-II/pgpool.conf.sample,v 1.26 2009/02/15 05:26:28 t-ishii Exp $

# Host name or IP address to listen on: '*' for all, '' for no TCP/IP

# connections

listen_addresses = '*'

# Port number for pgpool

port = 9999

# Port number for pgpool communication manager

pcp_port = 9898

# Unix domain socket path.  (The Debian package defaults to

# /var/run/postgresql.)

socket_dir = '/data/pgpool2/tmp'

# Unix domain socket path for pgpool communication manager.

# (Debian package defaults to /var/run/postgresql)

pcp_socket_dir = '/data/pgpool2/tmp'

# Unix domain socket path for the backend. Debian package defaults to /var/run/postgresql!

backend_socket_dir = '/data/pgpool2/tmp'

# pgpool communication manager timeout. 0 means no timeout, but strongly not recommended!

pcp_timeout = 10

# number of pre-forked child process

num_init_children = 32

# Number of connection pools allowed for a child process

max_pool = 4

# If idle for this many seconds, child exits.  0 means no timeout.

child_life_time = 300

# If idle for this many seconds, connection to PostgreSQL closes.

# 0 means no timeout.

connection_life_time = 0

# If child_max_connections connections were received, child exits.

# 0 means no exit.

child_max_connections = 0

# If client_idle_limit is n (n > 0), the client is forced to be

# disconnected whenever after n seconds idle (even inside an explicit

# transactions!)

# 0 means no disconnect.

client_idle_limit = 0

# Maximum time in seconds to complete client authentication.

# 0 means no timeout.

authentication_timeout = 60

# Logging directory

logdir = '/tmp'

# pid file name

pid_file_name = '/data/pgpool2/pgpool.pid'

# Replication mode

replication_mode = true

# Load balancing mode, i.e., all SELECTs are load balanced.

# This is ignored if replication_mode is false.

load_balance_mode = false

# if there's a data mismatch between master and secondary

# start degeneration to stop replication mode

replication_stop_on_mismatch = false

# If true, replicate SELECT statement when load balancing is disabled.

# If false, it is only sent to the master node.

replicate_select = false

# Semicolon separated list of queries to be issued at the end of a session

reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT'

# for 8.3 or newer PostgreSQL versions DISCARD ALL can be used as

# follows. However beware that DISCARD ALL holds exclusive lock on

# pg_listener so it will be a serious performance problem if there are

# lots of concurrent sessions.

# reset_query_list = 'ABORT; DISCARD ALL'

# If true print timestamp on each log line.

print_timestamp = true

# If true, operate in master/slave mode.

master_slave_mode = false

# If true, cache connection pool.

connection_cache = true

# Health check timeout.  0 means no timeout.

health_check_timeout = 20

# Health check period.  0 means no health check.

health_check_period = 0

# Health check user

health_check_user = 'nobody'

# Execute command by failover.

# special values:  %d = node id

#                  %h = host name

#                  %p = port number

#                  %D = database cluster path

#                  %m = new master node id

#                  %M = old master node id

#                  %% = '%' character

#

failover_command = ''

# Execute command by failback.

# special values:  %d = node id

#                  %h = host name

#                  %p = port number

#                  %D = database cluster path

#                  %m = new master node id

#                  %M = old master node id

#                  %% = '%' character

#

failback_command = ''

# If true, automatically locks a table with INSERT statements to keep

# SERIAL data consistency.  If the data does not have SERIAL data

# type, no lock will be issued. An /*INSERT LOCK*/ comment has the

# same effect.  A /NO INSERT LOCK*/ comment disables the effect.

insert_lock = true

# If true, ignore leading white spaces of each query while pgpool judges

# whether the query is a SELECT so that it can be load balanced.  This

# is useful for certain APIs such as DBI/DBD which is known to adding an

# extra leading white space.

ignore_leading_white_space = true

# If true, print all statements to the log.  Like the log_statement option

# to PostgreSQL, this allows for observing queries without engaging in full

# debugging.

log_statement = false

# If true, incoming connections will be printed to the log.

log_connections = false

# If true, hostname will be shown in ps status. Also shown in

# connection log if log_connections = true.

# Be warned that this feature will add overhead to look up hostname.

log_hostname = false

# if non 0, run in parallel query mode

parallel_mode = false

# if non 0, use query cache

enable_query_cache = false

#set pgpool2 hostname

pgpool2_hostname = ''

# system DB info

system_db_hostname = 'localhost'

system_db_port = 5432

system_db_dbname = 'pgpool'

system_db_schema = 'pgpool_catalog'

system_db_user = 'pgpool'

system_db_password = ''

# backend_hostname, backend_port, backend_weight

# here are examples

#backend_hostname0 = 'node1'

#backend_port0 = 5432

#backend_weight0 = 1

#backend_data_directory0 = '/usr/local/pgsql/data'

#backend_hostname1 = 'node2'

#backend_port1 = 5432

#backend_weight1 = 1

#backend_data_directory1 = '/usr/local/pgsql/data'

# - HBA -

# If true, use pool_hba.conf for client authentication. In pgpool-II

# 1.1, the default value is false. The default value will be true in

# 1.2.

enable_pool_hba = false

# - online recovery -

# online recovery user

recovery_user = 'nobody'

# online recovery password

recovery_password = ''

# execute a command in first stage.

recovery_1st_stage_command = ''

# execute a command in second stage.

recovery_2nd_stage_command = ''

# maximum time in seconds to wait for the recovering node's postmaster

# start-up. 0 means no wait.

# this is also used as a timer waiting for clients disconnected before

# starting 2nd stage

recovery_timeout = 90

# If client_idle_limit_in_recovery is n (n > 0), the client is forced

# to be disconnected whenever after n seconds idle (even inside an

# explicit transactions!)  0 means no disconnect. This parameter only

# takes effect in recovery 2nd stage.

client_idle_limit_in_recovery = 0

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

pgpool-II가 있는 호스트에서 두 백엔드 서버로 pgsql을 통한 연결은 확인해보셨나요?


어차피 popool을 통해 백엔드에 연결이 되기때문에 외부에서 백엔드에 연결되고, 안되고는 문제가 안됩니다. 외부에서 안되어도 pgpool이 있는 호스트에서만 연결되면 됩니다.


pgpool이 설치된 호스트에서 psql같은 툴로 두 백엔드 호스트에 연결이 가능한지 확인해보셔야 할 것 같습니다.

김영우님이 2009-04-21 17:40에 작성한 댓글입니다. Edit

psql로 두번째 노드로 접속을 해봐도 접속이 됩니다. 5432포트로하면요.
이중화라는게 참 어럽네요. 일단 하나하나 세팅이 잘못된게 있는지 찾아보고 있는데 잘 안됩니다..

김태규님이 2009-04-22 10:01에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
7697pgsql에서 모두 삭제할 때 스퀸스까지 [4]
아앙
2009-04-22
7092
7696SELECT 속도관련 질문입니다~ 도와주세욤^^; [4]
주성진
2009-04-22
7192
7695pgadmin III에서 여러 IP Address 접속하는 법이 궁금합니다. [3]
박춘삼
2009-04-20
7369
7694solaris 10 pgpool-II 접속문제 [2]
김태규
2009-04-20
9762
7693pl/pgsql api 자료 있는곳을 알려주세요 [2]
치우
2009-04-17
6981
7692한 테이블에 참조영역을 다 집어넣고 서브쿼리로 골라내는 방법에 대한 질문 [5]
성제호
2009-04-17
7295
7691freebsd에서 접속되던 pgpool-II이 솔라리스10에선 접속이 안되고 있습니다.
김태규
2009-04-17
7104
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다