重新启动我的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。酿造更新可能也是必要的。

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

对我来说,解决办法就是重启电脑。我首先尝试使用Brew服务重新启动,当它不起作用时,重新启动似乎是下一个最好的选择,然后再考虑一些更复杂的解决方案。之后一切都照常进行。

这发生在我的Mac (High Sierra)死机后,我不得不手动重启它(按住电源按钮)。我所要做的就是重新开始。

我也犯过类似的错误。

所有这些都是从命令行完成的(根本没有sudo调用)

我验证我已经安装了PostgreSQL psql -V(注意这是一个大写的“V”) 我试图连接到服务器:psql postgres

这就是我在堆栈溢出问题中遇到错误的地方

在做了一些关于可能的修复的研究之后,我显然安装了PostgreSQL,但我没有一个默认的服务器。

我要做的是创建一个自定义数据目录

据我所知,创建自定义数据目录与设置默认服务器是一样的。

由于这是一台新机器(使用apple m1芯片的MacBook Pro 2021),我想找到最简单的解决方案,我相信这个自定义数据目录就是这样。修复此问题的其余步骤如下:

在主目录中,我创建了一个空目录mkdir myData 从主目录,初始化一个服务器:initdb myData(将一堆文件扔到myData目录) pg_ctl -D myData -l logfile start(启动服务器) PSQL postgres(连接到服务器)

所以,作为一个刚刚接触PostgreSQL和数据库以及SQL的人,有几点注意事项:

使用\q可以“退出”到服务器的连接(当连接到服务器时,也可以输入“帮助”) 也可以用pg_ctl -D myData stop来“停止”服务器

在这一点上,我现在确定我已经安装了PostgreSQL,有一个服务器,我可以启动和停止,并有能力连接到/断开,该服务器。

这个答案对我有用:在我的ubuntu系统上是https://stackoverflow.com/a/45454567/15067545。

命令:sudo service postgresql restart。