请求的 icu4c 版本不兼容



尝试在我的开发机器上启动我的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?

查看服务器日志,我发现它正在寻找icu4c version 63但我在icu4c version 64.2。 按照此处的说明,我能够重新安装icu4c version 63.1。然后我可以启动我的服务器。 做psql --version告诉我我正在跑步11.2.

但是,当我启动 rails 控制台时,当我输入命令时

我收到警告消息:

dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.64.dylib
Referenced from: /usr/local/bin/node
Reason: image not found
=> true

我该如何解决这个问题?

如果您只有种子数据,就像开发机器上经常出现的情况一样,您应该重新安装或升级 PostgreSQL 安装。这可能是最好的方法。如果您在计算机上确实有重要数据并遵循此路线,则应首先对其进行备份。

在Mac上,您只需brew upgrade postgresql即可进行升级,如果它在两个次要版本之间,例如11.2至11.5,则应该可以正常工作。如果涉及重大升级,例如从 10.4 到 11.5,则需要在数据库升级后执行brew postgresql-upgrade-database。请注意,这确实会创建旧数据库的副本,然后将其迁移到新格式,但可能涉及一些额外的清理步骤。

您还可以更改 icu4c 的已使用版本。查看这个问题的答案 dyld:库未加载:/usr/local/opt/icu4c/lib/libicui18n.62.dylib 在 Mac 上使用 brew 安装节点后运行 php 时出错

在您的开发计算机上,您应该能够丢失数据,但如果不能,则应查找已安装的PostgreSQL版本。数据库格式可以在主要版本之间更改。

最新更新