改善Postgres连接错误「PG::ConnectionBad连接到服务器的套接字”/tmp/.s.PGSQL.5432″」
情况
在应用程序开发中,当启动服务器时,发生了以下错误。
在此之前,没有发生过服务器启动或命令错误。
PG::ConnectionBad: connection to server on socket "/tmp/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?
环境
- 
- macOS Big Sur 11.6.1
 
 
- 
- PostgreSQL 14.0
 
 
- Rails 6.0.3
 
处理
 $ brew services stop postgresql
 $ brew services start postgresql
 $ brew services restart postgresql
根据错误内容尝试了上述方法,但没有改善。
参考了这篇文章,尝试删除postmaster.pid并重新启动,但没有改善。
用以下步骤来改善
#postgresql停止
 $ brew services stop postgresql
#postgresqlのディレクトリまで移動
 $ cd /usr/local/var/
#ディレクトリの存在を確認
 $ ls -la
#postgresqlのディレクトリ削除
 $ rm -rf postgresql
#postgresqlのディレクトリを再度作成
 $ initdb /usr/local/var/postgresql
#postgresqlをスタートさせる
 $ pg_ctl -D /usr/local/var/postgresql -l logfile start 
我临时移动并确认了前半部分的步骤,同时也执行了以下内容。
 $ rails db:create
 $ rails db:migrate
我成功地解决了问题,并可以使用改进命令了?
总结
据说有时在重新启动电脑等操作后,PostgreSQL无法正常启动。
本次由于在创建应用程序之前电脑一直处于开机状态,所以不适用于此情况。
由于之前一直正常运行,看起来是文件本身崩溃了。
请提供中文版的参考。
PostgreSQL 没有在 Mac 上运行。