当前位置: 首页 > 知识库问答 >
问题:

Mountain Lion(OS X服务器)中缺少套接字文件“/var/pgsql_socket/.s.pgsql.5432”

赫连宏伯
2023-03-14

我刚升级我的MacMini服务器从狮子服务器到山狮使用OS X服务器。我在使用PostgreSQL时遇到了与去年第一次安装Lion Server时相同的问题。

当我尝试执行任何类型的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/pgsql_socket/.s.PGSQL.5432"?

当我尝试更改_postgres的密码时,我得到了错误。我尝试了几个命令,但得到了相同的错误。我刚刚重新启动了我的服务器,但没有运气。我以超级用户身份登录查看/var/pgsql_socket,文件夹为空。文件夹/var/pgsql_socket_alt也为空。

我已经上网查过了。然而,几乎所有我读过的解决方案,包括关于堆栈溢出的解决方案,都建议删除并重新安装PostgreSQL。我不知道,但这似乎不是一个可行的选项,因为服务器应用程序上的几个选项使用PostgreSQL。我联系了Apple Enterprise Support(没有协议),我被告知我的问题必须由开发人员解决,这将花费695美元。

我有一个网站,现在关闭,因为我不能重建它。我不知道在这一点上该向哪里求助。我会继续上网看看是否能找到一些东西。但是,我希望有人能给我一个答复,以便我可以重建我的数据库。

更新:2012年12月13日15:33 GMT-6

下面是我对ps auwxgrep postg的输出:

_postgres      28123   0.0  0.1  2479696   7724   ??  Ss    3:01PM   0:00.04 /Applications/Server.app/Contents/ServerRoot/usr/bin/postgres_real -D /Library/Server/PostgreSQL For Server Services/Data -c listen_addresses= -c log_connections=on -c log_directory=/Library/Logs/PostgreSQL -c log_filename=PostgreSQL_Server_Services.log -c log_line_prefix=%t  -c log_lock_waits=on -c log_statement=ddl -c logging_collector=on -c unix_socket_directory=/Library/Server/PostgreSQL For Server Services/Socket -c unix_socket_group=_postgres -c unix_socket_permissions=0770
server1        28216   0.0  0.0  2432768    620 s000  R+    3:02PM   0:00.00 grep postg
_postgres      28138   0.0  0.0  2439388    752   ??  Ss    3:01PM   0:00.01 postgres: stats collector process                           
_postgres      28137   0.0  0.0  2479828   1968   ??  Ss    3:01PM   0:00.00 postgres: autovacuum launcher process                           
_postgres      28136   0.0  0.0  2479696    544   ??  Ss    3:01PM   0:00.00 postgres: wal writer process                           
_postgres      28135   0.0  0.0  2479696    732   ??  Ss    3:01PM   0:00.01 postgres: writer process                           
_postgres      28134   0.0  0.0  2479696    592   ??  Ss    3:01PM   0:00.00 postgres: checkpointer process                           
_postgres      28131   0.0  0.0  2439388    368   ??  Ss    3:01PM   0:00.00 postgres: logger process 

共有1个答案

邵阳德
2023-03-14

我可以将以下内容添加到.bash_profile中以防止该错误:

export PGHOST=localhost

这样做是因为:

如果省略主机名,psql将通过UNIX域套接字连接到本地主机上的服务器,或者通过TCP/IP连接到没有UNIX域套接字的计算机上的localhost。

您的操作系统支持Unix域套接字,但psql需要的PostgreSQL的Unix套接字要么不存在,要么位于它所期望的不同位置。

将主机名显式指定为localhost将强制psql使用TCP/IP。设置环境变量pghost是实现此目的的方法之一。这在psql的手册中有记载。

 类似资料:
  • 我刚刚使用OS X Server将我的MacMini服务器从Lion Server升级到Mountain Lion。我在PostgreSQL上遇到了与去年第一次安装Lion Server时相同的问题。 当我尝试执行任何类型的PostgreSQL终端命令时,我得到了以下臭名昭著的错误消息,多年来许多人都收到了: 当我尝试更改_postgres的密码时,出现了错误。我尝试了几个命令,但得到同样的错误。

  • 问题内容: 我的问题开始于我无法以root用户身份登录mysql安装。我试图在不打开密码的情况下运行mysql …但是每当我运行命令时 我永远也回不了提示。我试图按照以下说明恢复密码。 屏幕如下所示: 并且没有提示您开始输入SQL命令来重置密码。 当我按+ 杀死它时,会收到以下消息: 如果重试该命令并将其保留足够长的时间,则会收到以下一系列消息: 但是,如果我尝试通过以下方式以root用户身份登录

  • 过了一段时间,Postgres数据库停止了我的live服务器的工作。我在这台服务器上工作了8个月。现在它突然停止工作了。 当我尝试输入命令时,psql产生错误

  • 不太确定是什么导致了这种情况,但很可能是在连接到PostgreSQL数据库的rails服务器关闭时退出终端的(我知道这不是一个好做法,但我学到了教训!) 我已经尝试了以下方法: < li >重新启动我的机器(使用MBA M1 2020) < li >使用homebrew重新启动PostgreSQL < code > brew服务重新启动postgresql < li >使用自制程序重新安装Post

  • 需要帮助修复我的postgresql,预装的一个与OSX狮子。 我得到了错误 此外,当我使用终端命令“哪个psql”时,我得到 因此,我似乎指向了正确的psql安装。此外,我最近完成了删除所有以前安装的postgres/postgres应用程序等,并且我还从我的“.bash_profile”中删除了与这些以前版本的postgres相关的任何内容。 作为补充信息,我尝试使用Postgres。应用程序

  • 线程“main”java.net.ConnectException:连接超时:在java.net.dualStackplainsockeTimpl.Connect0(本机方法)在java.net.dualStackplainsockeTimpl.socketConnect(DualStackplainsockeTimpl.java:69)在java.net.abstractplainsockeTi