Обсуждение: PgBouncer error - psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.6432"?

Поиск
Список
Период
Сортировка
Hi Guys;

Can I please get some assistance:

I have postgres server running on the localhost:
-bash-4.2$ telnet localhost 5432
Trying ::1...
Connected to localhost.
Escape character is '^]'.

-bash-4.2$ psql -U postgres 
psql (9.4.4)
Type "help" for help.

postgres=# \list
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 test      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
(4 rows)

pgbouncer.ini:
[databases]
template1 = host=127.0.0.1 port=5432 dbname=template1
[pgbouncer]
listen_port = 6432
listen_addr = 127.0.0.1
auth_type = trust
auth_file = /etc/pgbouncer/userslist.txt
logfile = /var/log/pgbouncer.log
pidfile = /var/run/pgbouncer/pgbouncer.pid
admin_users = postgres

-bash-4.2$ telnet localhost 6432
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

2015-07-06 15:02:00.233 11993 DEBUG C-0x2549910: (nodb)/(nouser)@127.0.0.1:44274 P: got connection: 127.0.0.1:44274 -> 127.0.0.1:6432

But here is the weird thing:
When I try to run:
-bash-4.2$ psql -p 6432 pgbouncer
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.6432"?

Please tell me what Im doing wrong?

And another question, if I want to specify remote postgres DB's in the .ini file. How do I do that?

Thanks
Ali.

 

 

From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Ali Aktar
Sent: Monday, July 06, 2015 11:04 AM
To: pgsql-general@postgresql.org
Subject: [GENERAL] PgBouncer error - psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.6432"?

 

Hi Guys;

 

Can I please get some assistance:

 

I have postgres server running on the localhost:

-bash-4.2$ telnet localhost 5432

Trying ::1...

Connected to localhost.

Escape character is '^]'.

 

-bash-4.2$ psql -U postgres 

psql (9.4.4)

Type "help" for help.

 

postgres=# \list

                                  List of databases

   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   

-----------+----------+----------+-------------+-------------+-----------------------

 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 

 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +

           |          |          |             |             | postgres=CTc/postgres

 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +

           |          |          |             |             | postgres=CTc/postgres

 test      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 

(4 rows)

 

pgbouncer.ini:

[databases]

template1 = host=127.0.0.1 port=5432 dbname=template1

[pgbouncer]

listen_port = 6432

listen_addr = 127.0.0.1

auth_type = trust

auth_file = /etc/pgbouncer/userslist.txt

logfile = /var/log/pgbouncer.log

pidfile = /var/run/pgbouncer/pgbouncer.pid

admin_users = postgres

 

-bash-4.2$ telnet localhost 6432

Trying ::1...

telnet: connect to address ::1: Connection refused

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

 

2015-07-06 15:02:00.233 11993 DEBUG C-0x2549910: (nodb)/(nouser)@127.0.0.1:44274 P: got connection: 127.0.0.1:44274 -> 127.0.0.1:6432

 

But here is the weird thing:

When I try to run:

-bash-4.2$ psql -p 6432 pgbouncer

psql: could not connect to server: No such file or directory

            Is the server running locally and accepting

            connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.6432"?

 

Please tell me what Im doing wrong?

 

And another question, if I want to specify remote postgres DB's in the .ini file. How do I do that?

 

Thanks

Ali.

 

 

You should specify pgbouncer with “-d” option:

 

-bash-4.2$ psql -p 6432 –d pgbouncer

 

Regards,

Igor Neyman

 

 

Cursory observations below...

On Mon, Jul 6, 2015 at 11:04 AM, Ali Aktar <aktarali@gmail.com> wrote:
Hi Guys;

Can I please get some assistance:

I have postgres server running on the localhost:
-bash-4.2$ telnet localhost 5432
Trying ::1...
Connected to localhost.
Escape character is '^]'.

-bash-4.2$ psql -U postgres 
psql (9.4.4)
Type "help" for help.

​You are connecting to a unix socket and not a TCP/IP port​...


postgres=# \list
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 test      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
(4 rows)

pgbouncer.ini:
[databases]
template1 = host=127.0.0.1 port=5432 dbname=template1

​haven't proved PostgreSQL is listening on 127.0.0.1:5432 yet; only proved it is listing on the local unix socket...

[pgbouncer]
listen_port = 6432
listen_addr = 127.0.0.1
auth_type = trust
auth_file = /etc/pgbouncer/userslist.txt
logfile = /var/log/pgbouncer.log
pidfile = /var/run/pgbouncer/pgbouncer.pid
admin_users = postgres

-bash-4.2$ telnet localhost 6432
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

​Listening on a tcp/ip port​...(ip4 only)


2015-07-06 15:02:00.233 11993 DEBUG C-0x2549910: (nodb)/(nouser)@127.0.0.1:44274 P: got connection: 127.0.0.1:44274 -> 127.0.0.1:6432

But here is the weird thing:
When I try to run:
-bash-4.2$ psql -p 6432 pgbouncer

...​but attempting to connect to a unix socket​

psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.6432"?

Please tell me what Im doing wrong?

​Try specifying "--host=localhost" or "--host=127.0.0.1"


And another question, if I want to specify remote postgres DB's in the .ini file. How do I do that?


​[databases]
name = host=remote_ip_address​ etc...

David J.