启动日志文件:
2015-03-06 01:57:56: pid 2760: LOG: Setting up socket for 0.0.0.0:9999
2015-03-06 01:57:56: pid 2760: LOG: Setting up socket for :::9999
2015-03-06 01:57:56: pid 2760: LOG: pgpool-II successfully started. version 3.4.
0 (tataraboshi)
2015-03-06 01:57:56: pid 2760: LOG: find_primary_node: checking backend no 0
2015-03-06 01:57:56: pid 2760: LOG: find_primary_node: primary node id is 0
2015-03-06 01:58:02: pid 2792: ERROR: unable to read message length
2015-03-06 01:58:02: pid 2792: DETAIL: message length (8) in slot 1 does not mat
ch with slot 0(12)
调试日志文件:
2015-03-06 01:55:07: pid 2680: LOG: find_primary_node: primary node id is 0
2015-03-06 01:55:42: pid 2712: DEBUG: I am 2712 accept fd 6
2015-03-06 01:55:42: pid 2712: DEBUG: reading startup packet
2015-03-06 01:55:42: pid 2712: DETAIL: Protocol Major: 1234 Minor: 5679 database
: user:
2015-03-06 01:55:42: pid 2712: DEBUG: selecting backend connection
2015-03-06 01:55:42: pid 2712: DETAIL: SSLRequest from client
2015-03-06 01:55:42: pid 2712: DEBUG: reading startup packet
2015-03-06 01:55:42: pid 2712: DETAIL: application_name: psql
2015-03-06 01:55:42: pid 2712: DEBUG: reading startup packet
2015-03-06 01:55:42: pid 2712: DETAIL: Protocol Major: 3 Minor: 0 database: post
gres user: enterprisedb
2015-03-06 01:55:42: pid 2712: DEBUG: creating new connection to backend
2015-03-06 01:55:42: pid 2712: DETAIL: connecting 0 backend
2015-03-06 01:55:42: pid 2712: DEBUG: creating new connection to backend
2015-03-06 01:55:42: pid 2712: DETAIL: connecting 1 backend
2015-03-06 01:55:42: pid 2712: DEBUG: reading message length
2015-03-06 01:55:42: pid 2712: DETAIL: slot: 0 length: 12
2015-03-06 01:55:42: pid 2712: DEBUG: reading message length
2015-03-06 01:55:42: pid 2712: DETAIL: slot: 1 length: 8
2015-03-06 01:55:42: pid 2712: ERROR: unable to read message length
2015-03-06 01:55:42: pid 2712: DETAIL: message length (8) in slot 1 does not mat
ch with slot 0(12)
psql 命令:
[enterprisedb@testing_ppas93]$ psql -h localhost -p 9999 -d postgres
psql: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request
我使用 pgpool II 来控制两台服务器之间的故障转移事件(谷歌云上的主服务器,我本地的从属服务器,centos x64,数据库:Postgres Plus Advanced Server 9.3)。当我尝试通过端口 9999 (example: psql -h localhost -p 9999 -d postgres
) 连接我的数据库时,pgpool 会引发错误
错误:无法读取消息长度
关于上面的错误,由于 pgpool 和从服务器之间的连接,如果我将pgpool 主机的从属pg_hba.conf从 md5 更改为 trust,它工作正常。
两种修复方法: