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

升级到OSX Mavericks后修复postgresql

宇文学博
2023-03-14

最近对OSX Mavericks的升级中断了我的Rails应用程序的数据库连接。

当我尝试从数据库中提取时,服务器返回以下错误:

PG::ConnectionBad (could not connect to server: Connection refused
    Is the server running on host "localhost" (::1) and accepting
    TCP/IP connections on port 5432?
could not connect to server: Connection refused
    Is the server running on host "localhost" (127.0.0.1) and accepting
    TCP/IP connections on port 5432?
could not connect to server: Connection refused
    Is the server running on host "localhost" (fe80::1) and accepting
    TCP/IP connections on port 5432?

当尝试运行psql时,我得到:

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

我已经尝试了许多在互联网上可用的解决方案。例如重新安装pg gem并在my database.yml中设置host:localhost。我的/usr/local/var/postgres/pg_hba.conf文件显示:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local   replication     RyanKing                                trust
#host    replication     RyanKing        127.0.0.1/32            trust
#host    replication     RyanKing        ::1/128                 trust

返回哪个psql:/usr/local/bin/psql

这件事有什么解决办法吗?一些解决方案建议我需要将$path更改为以前的postgres安装,因为postgres的新版本将与mavericks一起添加。我如何找到它的位置?很有可能是安装了自制的,但我不确定。

共有1个答案

公良骁
2023-03-14

如果您是通过homebrew安装的,请尝试以下操作(从brew info postgreSQL)

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

它将重新加载它。postgres.app我的默认值将找不到您的数据库(您需要将其指向pgdata目录,并且您可能会遇到版本冲突(如果您运行9.2而postgres.app是9.3,则需要进行转储/还原)。

从评论中提取。

postgres -D /usr/local/var/postgres 

那就把他们都备份起来。pg_dumpall>~/mydatabases.dump

杀死postgres

BREW重新安装PostgreSQL,但警告您这将使您从9.2.39.3.1。然后重新导入所有数据库psql 。确保按照launchctl材料的卸载/加载说明进行操作,在这一点上,您应该是很好的。您还可以考虑使用Postgres.app并将数据库导入到该应用程序中,但无论如何都需要备份/转储数据库。

 类似资料:
  • 我升级到了mavericks,在安装/编译新的gems时遇到了一些麻烦,所以我重新安装了xcode,并进行了brew更新和升级。Gems现在可以工作了,甚至postgres也继续工作了一段时间,直到最近重新启动。现在波斯特格雷斯似乎有问题。

  • 我用Play2.0创建了一个应用程序。我实现了scribe-java库来使用一些OAuth服务。直到今天,一切都很好,但当我升级jdk并重新启动服务器时,我不能使用scribe-java库。它似乎在sun.security包中使用了和类,但找不到。 “java-version”返回: 播放2.0 StackTrace:

  • 我正在运行《docker compose》中的jenkins,来自图片jenkins/jenkins。升级到Jenkins 2.277.1后,LDAP身份验证停止工作,我无法登录。我收到以下错误: 詹金斯。docker。new\u 1 | 2021 06-04 14:49:31.3110000[id=138]警告o.j.p.p.DiskUsageCollector#collect:无法获取磁盘使用

  • 一旦我升级到Flutter2.5.1,我的项目就停止构建和运行,并出现以下错误: /users/admin/flutter/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_android-2.0.0/android/src/main/java/com/baseflow/geolocator/location/locationmapper.

  • 从带有SP1的AEM 6.2升级到AEM 6.4后,很少有软件包未安装。旧版本处于已安装状态。 对于新软件包,显示消息为“似乎安装了另一个版本:”请参见下面的屏幕截图。 正因为如此,我可以看到很少的脚本没有更新最新的API。例如AEM 6.4升级实例: