Postgresql pgbouncer windows 10-客户端登录超时(服务器关闭)错误
我正在尝试在本地计算机上设置pgbouncer。我有标准(安装后未更改任何内容)配置文件,其中包含以下条目:Postgresql pgbouncer windows 10-客户端登录超时(服务器关闭)错误,postgresql,pgbouncer,Postgresql,Pgbouncer,我正在尝试在本地计算机上设置pgbouncer。我有标准(安装后未更改任何内容)配置文件,其中包含以下条目: postgres=host=127.0.0.1端口=5432 收听地址=* 监听端口=6432 auth_type=trust//也使用md5和普通测试 我的postgresql(9.4版)正在5432端口上运行。当我执行 psql-U postgres-p5432-d postgres 我可以成功连接。现在我正在尝试连接到pgbouncer psql-U postgres-p6432-
postgres=host=127.0.0.1端口=5432
收听地址=*
监听端口=6432
auth_type=trust//也使用md5和普通测试
我的postgresql(9.4版)正在5432端口上运行。当我执行
psql-U postgres-p5432-d postgres
我可以成功连接。现在我正在尝试连接到pgbouncer
psql-U postgres-p6432-d postgres
在提供密码后,pgbouncer无法连接(它会挂起60秒),然后超时并出错
psql:错误:客户端登录超时(服务器关闭)
Pgbouncer日志:
2017-05-05 00:17:27.084 14696日志文件描述符限制:-1(H:-1),最大客户端连接:100,最大可能fds:130
2017-05-05 00:17:27.104 14696登录监听::/6432
2017-05-05 00:17:27.105 14696在0.0.0.0:6432上监听日志
2017-05-05 00:17:27.106 14696日志进程启动:pgbouncer 1.7.2,libevent 2.0.21-stable(win32),ADN:evdns2,tls:OpenSSL 1.0.2k 2017年1月26日
2017-05-05 00:18:27.104 14696日志统计:0请求/秒,输入0请求/秒,输出0请求/秒,查询0请求/秒
2017-05-05 00:18:51.85214696日志C-009B8FE0:postgres/postgres@[::1]:55878登录尝试:db=postgres user=postgres tls=no
2017-05-05 00:18:51.854 14696警告
2017-05-05 00:18:51.854 14696日志S-009EF248:博士后/postgres@127.0.0.1:5432关闭原因:连接失败(年龄=0)
2017-05-05 00:19:06.929 14696警告
2017-05-05 00:19:06.929 14696日志S-009EF248:博士后/postgres@127.0.0.1:5432关闭原因:连接失败(年龄=0)
2017-05-05 00:19:21.949 14696警告
2017-05-05 00:19:21.950 14696日志S-009EF248:博士后/postgres@127.0.0.1:5432关闭原因:连接失败(年龄=0)
2017-05-05 00:19:27.105 14696日志统计:0请求/秒,输入0请求/秒,输出0请求/秒,查询0请求/秒
2017-05-05 00:19:36.969 14696警告
2017-05-05 00:19:36.970 14696日志S-009EF248:博士后/postgres@127.0.0.1:5432关闭原因:连接失败(年龄=0)
2017-05-05 00:19:51.990 14696日志C-009B8FE0:postgres/postgres@[::1]:55878关闭原因:客户端登录超时(服务器关闭)(年龄=60岁)
2017-05-05 00:19:51.991 14696警告C-009B8FE0:postgres/postgres@[::1]:55878池程序错误:客户端登录超时(服务器关闭)
2017-05-05 00:20:27.105 14696日志统计:0请求/秒,输入0请求/秒,输出0请求/秒,查询0请求/秒
hba.conf
托管所有127.0.0.1/32 md5
主机所有::1/128 md5
postgresql.conf
侦听地址='*'
我做错了什么
编辑1:
为了让这一切顺利进行,我尝试了:
您确定您的postgresql server正在本地主机上接收连接吗?请尝试psql-H127.0.0.1…并确认您可以连接。是的,它正在工作。我可以连接
psql-U postgres-h 127.0.0.1-p 5432-d postgres
OK,现在可以连接pgbouncer setauth_type=md5
并检查您的auth_文件是否包含正确的用户名/密码对。然后再次尝试通过pgbouncer连接。首先使用错误的密码,然后使用正确的密码。查看记录的内容。然后,假设您可以连接到pgbouncer本身,检查[数据库]
部分中的设置,了解您在那里使用的用户/密码。在提供错误的密码后,我获得了身份验证失败
,并且密码正确后客户端登录时间
。我没有在数据库设置中设置任何密码。但即使设置了密码,仍然没有帮助。我想pgbouncer可能在连接过程中使用了不同的主机(比如主机名),所以我在没有帮助的情况下编辑了hba.confhost all 0.0.0/0 md5。
2017-05-05 22:26:01.899 8008 LOG C-010C8FF0: postgres/postgres@[::1]:61687 login attempt: db=postgres user=postgres tls=no
2017-05-05 22:26:01.899 8008 LOG C-010C8FF0: postgres/postgres@[::1]:61687 closing because: client unexpected eof (age=0)
2017-05-05 22:26:04.753 8008 LOG C-010C8FF0: postgres/postgres@[::1]:61690 login attempt: db=postgres user=postgres tls=no
2017-05-05 22:26:04.753 8008 WARNING
2017-05-05 22:26:04.753 8008 LOG S-010FF258: postgres/postgres@127.0.0.1:5434 closing because: connect failed (age=0)
2017-05-05 22:26:19.803 8008 WARNING
2017-05-05 22:26:19.803 8008 LOG S-010FF258: postgres/postgres@127.0.0.1:5434 closing because: connect failed (age=0)
2017-05-05 22:26:35.086 8008 WARNING
2017-05-05 22:26:35.086 8008 LOG S-010FF258: postgres/postgres@127.0.0.1:5434 closing because: connect failed (age=0)
2017-05-05 22:26:41.581 8008 LOG Stats: 0 req/s, in 0 b/s, out 0 b/s,query 0 us
2017-05-05 22:26:50.359 8008 WARNING
2017-05-05 22:26:50.359 8008 LOG S-010FF258: postgres/postgres@127.0.0.1:5434 closing because: connect failed (age=0)
2017-05-05 22:27:04.961 8008 LOG C-010C8FF0: postgres/postgres@[::1]:61690 closing because: client_login_timeout (server down) (age=60)
2017-05-05 22:27:04.961 8008 WARNING C-010C8FF0: postgres/postgres@[::1]:61690 Pooler Error: client_login_timeout (server down)
[databases]
postgres = host=127.0.0.1 port=5434 dbname=postgres
[pgbouncer]
logfile = C:\Program Files\PostgreSQL\PgBouncer\log\pgbouncer.log
pidfile = C:\Program Files\PostgreSQL\PgBouncer\log\pgbouncer.pid
listen_addr = *
listen_port = 6432
auth_type = md5
auth_file = C:\Program Files\PostgreSQL\PgBouncer\etc\userlist.txt
admin_users = postgres
stats_users = postgres
pool_mode = session
max_client_conn = 100
default_pool_size = 20