【问题标题】:psql : connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?psql:Unix域套接字“/var/run/postgresql/.s.PGSQL.5432”上的连接?
【发布时间】:2021-09-23 20:15:39
【问题描述】:

昨天我已经安装了 postgresql 并完成了所有设置并创建了数据库和表,但今天早上我突然遇到了这个错误

我也卸载并安装了 postgresql,但还是同样的错误。而且我还观察到,当新安装时它工作正常,但是一旦我关闭或重新启动我的系统,我就会收到以下错误。

 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.5432"?

我已经尝试了所有媒体中给出的所有解决方案,但我无法解决问题,所以我再次发布这个问题和我的输出。

postgresql的状态

**sudo /etc/init.d/postgresql status**

postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Wed 2019-10-30 11:40:39 IST; 5min ago
Process: 7666 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 7666 (code=exited, status=0/SUCCESS)
Tasks: 0
Memory: 0B
  CPU: 0
CGroup: /system.slice/postgresql.service

当我运行 pg_lsclusters 时

**pg_lsclusters**

Ver Cluster Port Status Owner    Data directory              Log file
11  main    5432 down   postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log

 **dpkg -l | grep postgres**

ii  pgdg-keyring                                2018.2                                       all          keyring for apt.postgresql.org
ii  postgresql                                  11+207.pgdg16.04+1                           all          object-relational SQL database (supported version)
ii  postgresql-11                               11.5-3.pgdg16.04+1                           amd64        object-relational SQL database, version 11 server
ii  postgresql-client-11                        11.5-3.pgdg16.04+1                           amd64        front-end programs for PostgreSQL 11
ii  postgresql-client-common                    207.pgdg16.04+1                              all          manager for multiple PostgreSQL client versions
ii  postgresql-common                           207.pgdg16.04+1                              all          PostgreSQL database-cluster manager
ii  postgresql-contrib                          11+207.pgdg16.04+1                           all          additional facilities for PostgreSQL (supported version)

我什至尝试重新启动 postgres 仍然是同样的问题。

 **sudo /etc/init.d/postgresql status**

【问题讨论】:

  • portunix_socket_directoriespostgresql.conf中的设置是什么?
  • @LaurenzAlbe unix_socket_directories = '/var/run/postgresql' & 端口 = 5432
  • @HarshBafna 我已经尝试了所有解决方案都不起作用。
  • 套接字文件是否存在? PostgreSQL 正在运行吗? PostgreSQL 日志文件中有什么内容吗?

标签: postgresql


【解决方案1】:

我确实收到了这个错误消息,这就是我解决它的方法。

/var/log/postgresql/postgresql-13-main.log 的日志文件中,存在以下几行:

2021-09-15 08:26:04.936 UTC [46258] LOG:  invalid value for parameter "lc_messages": "en_US.UTF-8"
2021-09-15 08:26:04.936 UTC [46258] LOG:  invalid value for parameter "lc_monetary": "en_US.UTF-8"
2021-09-15 08:26:04.937 UTC [46258] LOG:  invalid value for parameter "lc_numeric": "en_US.UTF-8"
2021-09-15 08:26:04.937 UTC [46258] LOG:  invalid value for parameter "lc_time": "en_US.UTF-8"
2021-09-15 08:26:04.937 UTC [46258] FATAL:  configuration file "/etc/postgresql/13/main/postgresql.conf" contains errors
pg_ctl: could not start server
Examine the log output.

这是由于缺少语言环境造成的,有以下可能的修复方法:

  1. localedef 据称解决了这个问题,但我没有运气。

    localedef -i en_US -f UTF-8 en_US.UTF-8
    
  2. 更改 postgresql.conf 并使用确实存在的语言环境(在我的情况下为 en_GB)

    lc_messages = 'en_GB.UTF-8'          # locale for system error message strings
    lc_monetary = 'en_GB.UTF-8'          # locale for monetary formatting
    lc_numeric = 'en_GB.UTF-8'           # locale for number formatting
    lc_time = 'en_GB.UTF-8'              # locale for time formatting
    
  3. 帖子设置

    port = 5432              # (change requires restart)
    

我的 PostgreSQL 13 默认配置(为 5433)上的端口错误,需要更改回默认的 5432。我认为这是从 v11 升级的结果,因此它给了它一个新的端口号。

在这些更改之后,PostgreSQL 需要重新启动,它现在应该可以正常运行,并且日志中没有错误,并且 psql 命令可以正常工作。

【讨论】:

    【解决方案2】:

    试试这个:

    sudo -u postgres -i

    然后:

    initdb --locale $LANG -E UTF8 -D '/var/lib/postgres/data/'

    exit

    到目前为止,这对我有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-31
      • 2019-12-10
      • 2014-05-10
      • 2015-08-13
      • 1970-01-01
      • 2021-02-21
      • 1970-01-01
      相关资源
      最近更新 更多