Thread: Postgres V9.1 - unix socket directory Ubuntu /tmp vs /var/run/postgres

Postgres V9.1 - unix socket directory Ubuntu /tmp vs /var/run/postgres

From
"Day, David"
Date:

Hi,

 

I have been working with a V9.0.5 postgresql source distribution under Ubuntu 10.04 where the tools (createdb, psql )  seemed to know that the socket communication file was found/created in /tmp.

I don’t recall having to set any configure options to have this work correctly.

 

Upon recent migration to V9.1.2   I find that on using pg_ctl to start the database the socket file is created in /tmp.  However the tools ( psql, creatdb ) seem to expect the socket file in /var/run/postgresql.  

 

I have solved my problem by declaring the unix_socket_directory in postgresql.conf file to be /var/run/postgresql.    It does seem for a standard build they should have a common location?

 

 

Have I overlooked some configuration setting ?

 

 

 

Thanks

 

 

Dave

"Day, David" <dday@redcom.com> writes:
> I have been working with a V9.0.5 postgresql source distribution under Ubuntu 10.04 where the tools (createdb, psql )
seemed to know that the socket communication file was found/created in /tmp. 
> I don't recall having to set any configure options to have this work correctly.

> Upon recent migration to V9.1.2   I find that on using pg_ctl to start the database the socket file is created in
/tmp. However the tools ( psql, creatdb ) seem to expect the socket file in /var/run/postgresql. 

> I have solved my problem by declaring the unix_socket_directory in postgresql.conf file to be /var/run/postgresql.
Itdoes seem for a standard build they should have a common location? 

If you build from unmodified PG sources, the default socket location is
indeed /tmp.  However, Debian and related distros feel that this
violates some distro standard or other, so they modify the source code
to make the default location /var/run/postgresql.  So it depends on
whose build you're using.

No, this state of affairs isn't tremendously satisfactory.  But it's
unlikely to change.  I suggest making sure that your psql etc come from
the same build as the server you're using.

            regards, tom lane