在 Ubuntu 上安装 PostgreSQL 的问题

Problem with PostgreSQL installation on Ubuntu

提问人:Gabriele Troviso 提问时间:3/15/2022 最后编辑:Gabriele Troviso 更新时间:3/16/2022 访问量:1280

问:

我按照几个教程在我的 Ubuntu 20.4 上安装 PostgreSQL,但我遇到了一个问题。 为了安装 Postgres,我使用了

sudo apt install postgresql postgresql-contrib

但是,当我投掷时,这似乎还可以

sudo -i -u postgres

postgres@gabriele:~$ psql

我看到这个错误

psql:错误:连接到套接字“/var/run/postgresql/.s.PGSQL.5432”上的服务器失败:>File o directory non esistente 服务器是否在本地运行并接受该套接字上的连接?

我不知道如何解决这个问题。也许,当我使用 pgAdmin4 处理 DB 时,我发现没有服务器连接,我不知道如何连接服务器。 这是我第一次做这种事情,有人能帮我吗?

PostgreSQL Ubuntu

评论


答:

1赞 Mushroomator 3/16/2022 #1

通常,您希望在后台将 Postgres 数据库服务器作为服务启动(例如在容器中除外)。您似乎正在尝试在前台启动它。 您可以使用以下命令执行此操作。

sudo systemctl start postgresql

您可以使用以下命令检查它是否正在运行:

sudo systemctl status postgresql

如果它正在运行,您应该会看到类似这样的东西。

● postgresql.service - PostgreSQL RDBMS
     Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
     Active: active (exited) since Tue 2022-03-15 16:57:15 CET; 4min 34s ago
    Process: 205678 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
   Main PID: 205678 (code=exited, status=0/SUCCESS)

然后,您仍然无法通过以下方式进行连接:默认情况下,Postgres 不会在使用时成功验证您的身份,并且您的用户名可能不是默认用户和数据库使用的用户名。 错误消息将是这样的。 此答案中有关于如何更改配置的指南,以便您能够成功进行身份验证。psqlPeer Authenticationpostgrespsqlpsql: error: FATAL: Peer authentication failed for user "postgres"

无论您使用的是 ,还是其他客户端都无关紧要,只要您正确配置了身份验证并使用正确的 、 和 进行连接。您可以查看默认值以及如何使用 指定自己的值。psqlpgAdminusernamedatabase namehostportpsql --help

PS:您可能还需要考虑使用官方的Postgres容器,而不是在系统上安装Postgres。还有关于如何在 DockerHub 上启动和运行它的描述。