重新启动我的Mac,我得到了可怕的Postgres错误:

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

发生这种情况的原因是由于一个无关的问题,我的macbook完全死机了,我不得不使用电源按钮进行硬重启。重启后,由于这个错误,我无法启动Postgres。


当前回答

我的问题是,我使用的是Gas Mask (Mac主机文件管理器),在我使用的hosts文件中没有localhost的条目。

我补充说:

127.0.0.1 localhost

这解决了我的问题。

其他回答

这个问题有很多来源,因此也有很多答案。每一次我都经历过。

1)如果你有某种类型的崩溃,删除/usr/local/var/postgres/postmaster。Pid文件可能是必需的,因为postgres可能没有正确处理它。但是确保没有进程正在运行。

2) Craig Ringer在其他文章中指出,苹果捆绑postgreSQL导致pg gem安装问题,设置PATH环境变量是一个解决方案。

3)另一个解决方案是卸载并重新安装gem。酿造更新可能也是必要的。

如果你偶然发现了这篇文章,如果你能找到其中一个来源,你将节省时间……

以上这些方法对我都没用。我必须以以下方式重新安装Postgres:

使用brew卸载postgresql 酿造医生(修复这里的任何东西) 啤酒清理 删除所有Postgres文件夹: Rm -r /usr/local/var/postgres rm -r ~/库/应用\支持/Postgres . txt 使用brew重新安装postgresql 启动服务器:brew服务启动postgresql 你现在必须创建你的数据库…(createdb)

对我来说,最好但奇怪的方式是做下一步的事情。 1)下载postgres93。App或其他版本。将此应用程序添加到/Applications/文件夹中。

2)在.bash_profile文件(在我的主目录下)中添加一行(命令): 导出路径= /应用程序/ Postgres93.app /内容/ MacOS / bin /: $路径 这是Postgres93.app中psql的路径。每次启动控制台时,行(命令)都会运行。

3)启动Postgres93。app从/Applications/文件夹。它启动一个本地服务器(端口为“5432”,主机为“localhost”)。

4)在所有这些操作之后,我很高兴运行$ createuser -SRDP user_name和其他命令,并看到它工作!Postgres93。应用程序可以在每次系统启动时运行。

5)如果你想看到你的数据库图形化,你应该安装PG Commander.app。这是将postgres DB视为漂亮的数据表的好方法

当然,它只对本地服务器有帮助。如果这些说明能帮助到其他面临这个问题的人,我会很高兴。

下面的命令帮助了我。问题出在PostgreSQL数据版本上。升级后,它开始为我工作良好。

brew upgrade postgresql
brew postgresql-upgrade-database
brew services restart postgresql

如果你在macOS上,并通过homebrew安装了postgres,请尝试重新启动

brew services restart postgresql

如果你使用的是Ubuntu,你可以用这两个命令中的任意一个重新启动它

sudo service postgresql restart

sudo /etc/init.d/postgresql restart