Thread: error: connection to server on socket...
Using the following command on my Debian 12 machine:
sudo apt-get install postgresql postgresql-15 postgresql-client-common postgresql-common postgresql-contrib postgresql-doc phppgadmin
and following the instruction on this web page I have installed PostgreSQL-15.
The installation went smooth, until the following command was issued :
sudo -u postgres psql
... I get an error message that reads:
could not change directory to "/home/my_account": Permission denied
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?
What can I do to resolve this issue?
Thanks in advance.
Addendum
I tried this, but to no avail : sudo systemctl start postgresql
Using the following command on my Debian 12 machine:
sudo apt-get install postgresql postgresql-15 postgresql-client-common postgresql-common postgresql-contrib postgresql-doc phppgadmin
and following the instruction on this web page I have installed PostgreSQL-15.
The installation went smooth, until the following command was issued :sudo -u postgres psql
... I get an error message that reads:
could not change directory to "/home/my_account": Permission denied
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?What can I do to resolve this issue?
Thanks in advance.
On 01.08.23 12:22, Amn Ojee Uw wrote: > Using the following command on my Debian 12 machine: > > sudo apt-get install postgresql postgresql-15 postgresql-client-common postgresql-common postgresql-contrib postgresql-docphppgadmin > > and following the instruction on this > <https://wiki.debian.org/PostgreSql#User_access> web page I have > installed PostgreSQL-15. > The installation went smooth, until the following command was issued : > > sudo -u postgres psql > > ... I get an error message that reads: > > could not change directory to "/home/my_account": Permission denied > psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory > Is the server running locally and accepting connections on that socket? > > What can I do to resolve this issue? When executing the `sudo` command above: * as which user are you doing that (you can see that via `id`)? * in which directory are you executing it (you can see that via `pwd`)? * what is the home directory of the postgres user (you can see that via `grep postgres /etc/passwd`) * what does `ls -ld /var/run/postgresql/; ls -l /var/run/postgresql/.s.PGSQL.5432` show? You also wrote: > I tried this, but to no avail : `sudo systemctl start postgresql` - what does `journalctl -xeu postgresql` say? - what does `tail -n 20 /var/log/postgresql/postgresql-*-qgisclouddb.log` show? *t
On Tue, 1 Aug 2023 06:22:46 -0400 Amn Ojee Uw wrote: >"/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory*//* Like mine, your distro probably uses /tmp/.s.PGSQL.5432 $ ll /tmp/.s.PGSQL.5432 srwxrwxrwx 1 postgres postgres 0 Aug 1 06:33 /tmp/.s.PGSQL.5432= https://askubuntu.com/questions/50621/can-not-connect-to-postgresql-listening-on-port-5432
El día martes, agosto 01, 2023 a las 07:28:49 -0400, pf@pfortin.com escribió: > On Tue, 1 Aug 2023 06:22:46 -0400 Amn Ojee Uw wrote: > > >"/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory*//* > > Like mine, your distro probably uses /tmp/.s.PGSQL.5432 > $ ll /tmp/.s.PGSQL.5432 > srwxrwxrwx 1 postgres postgres 0 Aug 1 06:33 /tmp/.s.PGSQL.5432= > This here is on SuSE Linux: # ls -l /tmp/.*5432 srwxrwxrwx 1 postgres postgres 0 Aug 1 13:39 /tmp/.s.PGSQL.5432 # netstat -an | grep 5432 | grep LIST tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN tcp6 0 0 :::5432 :::* LISTEN unix 2 [ ACC ] STREAM LISTENING 22000 /tmp/.s.PGSQL.5432 We normaly use the TCP/IP port 5432 to connect to the server. matthias -- Matthias Apitz, ✉ guru@unixarea.de, http://www.unixarea.de/ +49-176-38902045 Public GnuPG key: http://www.unixarea.de/key.pub
pf@pfortin.com writes: > On Tue, 1 Aug 2023 06:22:46 -0400 Amn Ojee Uw wrote: >> "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory*//* > Like mine, your distro probably uses /tmp/.s.PGSQL.5432 > $ ll /tmp/.s.PGSQL.5432 > srwxrwxrwx 1 postgres postgres 0 Aug 1 06:33 /tmp/.s.PGSQL.5432= Yeah. Look to see if there's a socket file there, and if so try sudo -u postgres psql -h /tmp In the longer term, this indicates that you have a psql that did not come from the same packager as your server, because the server thinks the default socket location is /tmp, but psql (or really the libpq.so it's using) thinks the default location is /var/run/postgresql. That's a build-time choice that some packagers make because $standards. So the long-term fix is to not have a hodge-podge of different Postgres installations on the same machine. BTW, you can ignore the "could not change directory" warning. That's expected when starting "sudo -u postgres psql" in a directory that the postgres user can't read. regards, tom lane
On 8/1/23 03:22, Amn Ojee Uw wrote: > Using the following command on my Debian 12 machine: > > /*sudo apt-get install postgresql postgresql-15 postgresql-client-common > postgresql-common postgresql-contrib postgresql-doc phppgadmin > */ > > > and following the instruction on this > <https://wiki.debian.org/PostgreSql#User_access> web page I have > installed PostgreSQL-15. > The installation went smooth, until the following command was issued : > > /*sudo -u postgres psql*/ > > ... I get an error message that reads: > > /*could not change directory to "/home/my_account": Permission denied*//* > *//*psql: error: connection to server on socket > "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory*//* > *//* Is the server running locally and accepting connections on that > socket?*/ > > What can I do to resolve this issue? Run pg_lsclusters and see what port the server is running on. > > Thanks in advance. > -- Adrian Klaver adrian.klaver@aklaver.com
Ah! Adrean, here is something interesting.
pg_lsclusters displays the following information
Ver Cluster Port Status Owner Data directory Log file
12 main 5432 down,binaries_missing postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log
15 main 5433 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log
displays the following error message : ls: cannot access '/tmp/.s.PGSQL.5432': No such file or directory
Due to matters of security let us assume that the output is :id
uid=1000(my_account) gid=1000(my_account) groups=1000(my_account),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),100(users),106(netdev),111(bluetooth),113(lpadmin),116(scanner),122(postgres),1001(tomcat)
/home/my_account
~$ grep postgres /etc/passwd
postgres:x:113:122:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
ls -ld /var/run/postgresql/
drwxrwsr-x 2 postgres postgres 100 Jul 31 20:45 /var/run/postgresql/ls -l /var/run/postgresql/.s.PGSQL.5432
ls: cannot access '/var/run/postgresql/.s.PGSQL.5432': No such file or directory
- what does `journalctl -xeu postgresql` say?
sudo journalctl -xeu postgresql
[sudo] password for my_account:
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit postgresql.service has begun execution.
░░
░░ The job identifier is 3496.
Jul 31 20:45:13p { line-height: 115%; margin-bottom: 0.25cm; background: transparent }a:link { color: #000080; text-decoration: underline } tree.com systemd[1]: Finished postgresql.service - PostgreSQL R>
░░ Subject: A start job for unit postgresql.service has finished successfully
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit postgresql.service has finished successfully.
░░
░░ The job identifier is 3496.
lines 4-16/16 (END)
sudo tail -n 20 /var/log/postgresql/postgresql-*-qgisclouddb.log
tail: cannot open '/var/log/postgresql/postgresql-*-qgisclouddb.log' for reading: No such file or directory
Thanks folks, I really appreciate the time you have dedicated to my question.
On 8/1/23 03:22, Amn Ojee Uw wrote:Using the following command on my Debian 12 machine:
/*sudo apt-get install postgresql postgresql-15 postgresql-client-common postgresql-common postgresql-contrib postgresql-doc phppgadmin
*/
and following the instruction on this <https://wiki.debian.org/PostgreSql#User_access> web page I have installed PostgreSQL-15.
The installation went smooth, until the following command was issued :
/*sudo -u postgres psql*/
... I get an error message that reads:
/*could not change directory to "/home/my_account": Permission denied*//*
*//*psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory*//*
*//* Is the server running locally and accepting connections on that socket?*/
What can I do to resolve this issue?
Run
pg_lsclusters
and see what port the server is running on.
Thanks in advance.
On 8/1/23 11:42, Amn Ojee Uw wrote: > Ah! Adrean, here is something interesting. > > /*pg_lsclusters*/ displays the following information > > /*Ver Cluster Port Status Owner Data > directory Log file*//* > *//*12 main 5432 down,binaries_missing postgres > /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log*//* > *//*15 main 5433 online postgres > /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log*/ > > What is version 12 is doing there, I thought that I had completely > removed it and replaced it with version 15!! You didn't, read: https://www.postgresql.org/message-id/20230731125247.puiaz7fjkfvljdwy%40alvherre.pgsql and https://www.postgresql.org/message-id/33f0fc61-2d0f-60bd-e0ed-4cada3c30301@aklaver.com The clue is "binaries_missing". You remove(ed) all the files except the conf files. > Should I remove that log file? Run: sudo apt purge postgresql-12 That will take care of removing all the conf files. To connect you need to specify the correct port, 5433 or do: sudo vi /etc/postgresql/15/main/postgresql.conf and change port = 5433 to port = 5432 Then restart the server. You then need to spend some time at the links in this message: https://www.postgresql.org/message-id/c1ad730a-a84a-ae97-2f23-6891cb06ef26%40aklaver.com > > Regarding /pf@pfortin.com/ assertion, I am working with a _/Debian 12/_ > machine and /*ls -l /tmp/.s.PGSQL.5432*/ > displays the following error message : /*ls: cannot access > '/tmp/.s.PGSQL.5432': No such file or directory*/ > > As for Tomas Pospisek questions : > * as which user are you doing that (you can see that via `id`)? > > Due to matters of security let us assume that the output is : > /*id*//* > *//*uid=1000(my_account) gid=1000(my_account) > groups=1000(my_account),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),100(users),*/ > /*106(netdev),111(bluetooth),113(lpadmin),116(scanner),122(postgres),1001(tomcat)*/ > > * in which directory are you executing it (you can see that via `pwd`)? > > /*/home/*//*my_account*/ > > * what is the home directory of the postgres user (you can see that via > `grep postgres /etc/passwd`) /* > */ > > /*~$ grep postgres /etc/passwd*//* > *//*postgres:x:113:122:PostgreSQL > administrator,,,:/var/lib/postgresql:/bin/bash*/ > > * what does `ls -ld /var/run/postgresql/; ls -l > /var/run/postgresql/.s.PGSQL.5432` show? > > /*ls -ld /var/run/postgresql/*//* > *//*drwxrwsr-x 2 postgres postgres 100 Jul 31 20:45 > /var/run/postgresql/*/ > > /*ls -l /var/run/postgresql/.s.PGSQL.5432*//* > *//*ls: cannot access '/var/run/postgresql/.s.PGSQL.5432': No such > file or directory*/ > > > - what does `journalctl -xeu postgresql` say? > > /*sudo journalctl -xeu postgresql*//* > *//*[sudo] password for *//*/**//*my_account*/: *//* > *//*░░ Support: https://www.debian.org/support*//* > *//*░░ *//* > *//*░░ A start job for unit postgresql.service has begun execution.*//* > *//*░░ *//* > *//*░░ The job identifier is 3496.*//* > *//*Jul 31 20:45:13 *//*tree.com systemd[1]: Finished > postgresql.service - PostgreSQL R>*//* > *//*░░ Subject: A start job for unit postgresql.service has finished > successfully*//* > *//*░░ Defined-By: systemd*//* > *//*░░ Support: https://www.debian.org/support*//* > *//*░░ *//* > *//*░░ A start job for unit postgresql.service has finished > successfully.*//* > *//*░░ *//* > *//*░░ The job identifier is 3496.*//* > *//*lines 4-16/16 (END)*/ > > - what does `tail -n 20 > /var/log/postgresql/postgresql-*-qgisclouddb.log` show? > > /*sudo tail -n 20 /var/log/postgresql/postgresql-*-qgisclouddb.log*//* > *//*tail: cannot open > '/var/log/postgresql/postgresql-*-qgisclouddb.log' for reading: No > such file or directory*/ > > > I hope I was able to answer all the interesting questions posted as > reply to my original post. > > /Thanks folks, I really appreciate the time you have dedicated to my > question./ > > > On 8/1/23 10:35 a.m., Adrian Klaver wrote: >> On 8/1/23 03:22, Amn Ojee Uw wrote: >>> Using the following command on my Debian 12 machine: >>> >>> /*sudo apt-get install postgresql postgresql-15 >>> postgresql-client-common postgresql-common postgresql-contrib >>> postgresql-doc phppgadmin >>> */ >>> >>> >>> and following the instruction on this >>> <https://wiki.debian.org/PostgreSql#User_access> web page I have >>> installed PostgreSQL-15. >>> The installation went smooth, until the following command was issued : >>> >>> /*sudo -u postgres psql*/ >>> >>> ... I get an error message that reads: >>> >>> /*could not change directory to "/home/my_account": Permission >>> denied*//* >>> *//*psql: error: connection to server on socket >>> "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or >>> directory*//* >>> *//* Is the server running locally and accepting connections on >>> that socket?*/ >>> >>> What can I do to resolve this issue? >> >> Run >> >> pg_lsclusters >> >> and see what port the server is running on. >> >>> >>> Thanks in advance. >>> >> -- Adrian Klaver adrian.klaver@aklaver.com
Thank you Adrian. It Worked!!! On 8/1/23 2:55 p.m., Adrian Klaver wrote: > On 8/1/23 11:42, Amn Ojee Uw wrote: >> Ah! Adrean, here is something interesting. >> >> /*pg_lsclusters*/ displays the following information >> >> /*Ver Cluster Port Status Owner Data >> directory Log file*//* >> *//*12 main 5432 down,binaries_missing postgres >> /var/lib/postgresql/12/main >> /var/log/postgresql/postgresql-12-main.log*//* >> *//*15 main 5433 online postgres >> /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log*/ >> >> What is version 12 is doing there, I thought that I had completely >> removed it and replaced it with version 15!! > > You didn't, read: > > https://www.postgresql.org/message-id/20230731125247.puiaz7fjkfvljdwy%40alvherre.pgsql > > > and > > https://www.postgresql.org/message-id/33f0fc61-2d0f-60bd-e0ed-4cada3c30301@aklaver.com > > > The clue is "binaries_missing". > > You remove(ed) all the files except the conf files. > > >> Should I remove that log file? > > Run: > > sudo apt purge postgresql-12 > > That will take care of removing all the conf files. > > > To connect you need to specify the correct port, 5433 or do: > > sudo vi /etc/postgresql/15/main/postgresql.conf > > and change > > port = 5433 > > to > > port = 5432 > > Then restart the server. > > You then need to spend some time at the links in this message: > > https://www.postgresql.org/message-id/c1ad730a-a84a-ae97-2f23-6891cb06ef26%40aklaver.com > > >> >> Regarding /pf@pfortin.com/ assertion, I am working with a _/Debian >> 12/_ machine and /*ls -l /tmp/.s.PGSQL.5432*/ >> displays the following error message : /*ls: cannot access >> '/tmp/.s.PGSQL.5432': No such file or directory*/ >> >> As for Tomas Pospisek questions : >> * as which user are you doing that (you can see that via `id`)? >> >> Due to matters of security let us assume that the output is : >> /*id*//* >> *//*uid=1000(my_account) gid=1000(my_account) >> groups=1000(my_account),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),100(users),*/ >> /*106(netdev),111(bluetooth),113(lpadmin),116(scanner),122(postgres),1001(tomcat)*/ >> >> * in which directory are you executing it (you can see that via `pwd`)? >> >> /*/home/*//*my_account*/ >> >> * what is the home directory of the postgres user (you can see that >> via `grep postgres /etc/passwd`) /* >> */ >> >> /*~$ grep postgres /etc/passwd*//* >> *//*postgres:x:113:122:PostgreSQL >> administrator,,,:/var/lib/postgresql:/bin/bash*/ >> >> * what does `ls -ld /var/run/postgresql/; ls -l >> /var/run/postgresql/.s.PGSQL.5432` show? >> >> /*ls -ld /var/run/postgresql/*//* >> *//*drwxrwsr-x 2 postgres postgres 100 Jul 31 20:45 >> /var/run/postgresql/*/ >> >> /*ls -l /var/run/postgresql/.s.PGSQL.5432*//* >> *//*ls: cannot access '/var/run/postgresql/.s.PGSQL.5432': No such >> file or directory*/ >> >> >> - what does `journalctl -xeu postgresql` say? >> >> /*sudo journalctl -xeu postgresql*//* >> *//*[sudo] password for *//*/**//*my_account*/: *//* >> *//*░░ Support: https://www.debian.org/support*//* >> *//*░░ *//* >> *//*░░ A start job for unit postgresql.service has begun >> execution.*//* >> *//*░░ *//* >> *//*░░ The job identifier is 3496.*//* >> *//*Jul 31 20:45:13 *//*tree.com systemd[1]: Finished >> postgresql.service - PostgreSQL R>*//* >> *//*░░ Subject: A start job for unit postgresql.service has finished >> successfully*//* >> *//*░░ Defined-By: systemd*//* >> *//*░░ Support: https://www.debian.org/support*//* >> *//*░░ *//* >> *//*░░ A start job for unit postgresql.service has finished >> successfully.*//* >> *//*░░ *//* >> *//*░░ The job identifier is 3496.*//* >> *//*lines 4-16/16 (END)*/ >> >> - what does `tail -n 20 >> /var/log/postgresql/postgresql-*-qgisclouddb.log` show? >> >> /*sudo tail -n 20 >> /var/log/postgresql/postgresql-*-qgisclouddb.log*//* >> *//*tail: cannot open >> '/var/log/postgresql/postgresql-*-qgisclouddb.log' for reading: No >> such file or directory*/ >> >> >> I hope I was able to answer all the interesting questions posted as >> reply to my original post. >> >> /Thanks folks, I really appreciate the time you have dedicated to my >> question./ >> >> >> On 8/1/23 10:35 a.m., Adrian Klaver wrote: >>> On 8/1/23 03:22, Amn Ojee Uw wrote: >>>> Using the following command on my Debian 12 machine: >>>> >>>> /*sudo apt-get install postgresql postgresql-15 >>>> postgresql-client-common postgresql-common postgresql-contrib >>>> postgresql-doc phppgadmin >>>> */ >>>> >>>> >>>> and following the instruction on this >>>> <https://wiki.debian.org/PostgreSql#User_access> web page I have >>>> installed PostgreSQL-15. >>>> The installation went smooth, until the following command was issued : >>>> >>>> /*sudo -u postgres psql*/ >>>> >>>> ... I get an error message that reads: >>>> >>>> /*could not change directory to "/home/my_account": Permission >>>> denied*//* >>>> *//*psql: error: connection to server on socket >>>> "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or >>>> directory*//* >>>> *//* Is the server running locally and accepting connections on >>>> that socket?*/ >>>> >>>> What can I do to resolve this issue? >>> >>> Run >>> >>> pg_lsclusters >>> >>> and see what port the server is running on. >>> >>>> >>>> Thanks in advance. >>>> >>> >