首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"psql: /usr/pgsql-11/lib/libpq.so.5:没有版本信息(psql所需)“实际上是什么意思?

"psql: /usr/pgsql-11/lib/libpq.so.5:没有版本信息(psql所需)“实际上是什么意思?
EN

Database Administration用户
提问于 2020-06-19 09:32:00
回答 4查看 21.8K关注 0票数 5

我有一个关于以下产出的问题:

代码语言:javascript
复制
[nikola@192 ~] $ sudo su - postgres
[postgres@192 ~] $ psql dvdrental postgres
psql: /usr/pgsql-11/lib/libpq.so.5: no version information available (required by psql)
psql: /usr/pgsql-11/lib/libpq.so.5: no version information available (required by psql)
psql (11.7, server 11.8)
Type "help" for help.

dvdrental=# 

以下两条信息代表什么?为什么?我要问的信息是:

  1. psql: /usr/pgsql-11/lib/libpq.so.5: no version information available (required by psql)
  2. psql (11.7, server 11.8) - BTW,对于这个psql --version命令,我得到以下输出:psql (PostgreSQL) 11.8 (had用于安装 PostgreSQL Server version 11.7以便执行\dt\l等命令) ...and也是这个输出:

postgres=#从version()选择*;版本gcc (GCC) 9.3.1 20200408 (红帽9.3.1-2),64位(1行)

我在Fedora 30上运行PostgreSQL 11.8。

rpm -qa|grep postgres命令的UPDATE1 1:由@LaurenzAlbe输出请求为:

代码语言:javascript
复制
[nikola@192 ~] $ rpm -qa|grep postgres
postgresql-11.7-2.fc30.x86_64
postgresql11-11.8-1PGDG.f30.x86_64
postgresql11-libs-11.8-1PGDG.f30.x86_64
postgresql11-server-11.8-1PGDG.f30.x86_64
postgresql-server-11.7-2.fc30.x86_64

UPDATE2 2

我运行了dnf remove postgresql postgresql-server命令->数据库,我可以通过pgAdmin4 4psql: /usr/pgsql-11/lib/libpq.so.5访问它们( psql消息所要求的)。但是,当我使用->命令访问终端中的postgres shell并执行psql some-database-name postgres时,现在出现了新的sudo su - postgres问题。

命令找不到..。安装软件包'postgresql‘以提供命令'psql'?

我猜想这是要求我再次安装 Fedora包,这是我第一次尝试摆脱它(不显示psql: /usr/pgsql-11/lib/libpq.so.5:没有可用的版本信息( psql)消息)。

如果没有安装Fedora软件包,但来自<#>PostgreSQL全球开发小组,有什么建议可以解决吗?

P.S. BTW,我按照链接安装了Postgres服务器,该链接使用PGDG包(但在我的机器上有些东西不能正常工作,我想我是Fedora30 OS提供的,可以安装Fedora软件包,这显然是我所做的:)。

EN

回答 4

Database Administration用户

回答已采纳

发布于 2020-06-19 12:21:00

您已经安装了一个包的混合物:一些来自Fedora发行版,一些来自PostgreSQL全球开发组。

这些不太合拍。特别是,您可以从PATH中的Fedora包获得libpq,但是来自PGDG包的D2在库路径上。

这就解释了你的第二个问题。

广告问题1:如果安装的库的库版本低于软件链接的版本,则会打印该警告。

删除Fedora包以解决问题:

代码语言:javascript
复制
dnf remove postgresql postgresql-server

我希望这会将正确的psql放在PATH上;如果没有,请重新安装postgresql11包。

票数 8
EN

Database Administration用户

发布于 2020-06-19 17:10:39

在试验并尝试了@Laurenz提出的建议之后,我终于找到了解决方案。

在执行问题中提到的步骤之后,解决方案再执行一个附加步骤,即运行sudo dnf reinstall pacakage_name命令(package_name是下面提到的三个包之一)命令,用于以下软件包:

代码语言:javascript
复制
[nikola@192 ~] $ rpm -qa|grep postgres
postgresql11-11.8-1PGDG.f30.x86_64
postgresql11-libs-11.8-1PGDG.f30.x86_64
postgresql11-server-11.8-1PGDG.f30.x86_64

在那之后,一切都按应有的方式运作。

票数 2
EN

Database Administration用户

发布于 2022-04-18 19:40:01

<#>更新

这个问题已经被回答了,所以这个答案是为了作为补充。

我发现在CentOS 8上运行postgres 13也有同样的问题,正如前面指出的,libpq的版本不匹配,并且来自不同的存储库。

代码语言:javascript
复制
#  dnf info --installed libpq* postgresql*
Installed Packages
Name         : libpq5
Version      : 14.2
Release      : 42PGDG.rhel8
Architecture : x86_64
Size         : 791 k
Source       : libpq5-14.2-42PGDG.rhel8.src.rpm
Repository   : @System
From repo    : pgdg-common
...
    
Name         : postgresql
Version      : 13.5
Release      : 1.module_el8.5.0+1062+8eba5f44
Architecture : x86_64
Size         : 5.5 M
Source       : postgresql-13.5-1.module_el8.5.0+1062+8eba5f44.src.rpm
Repository   : @System
From repo    : appstream
...
    
Name         : postgresql-server
Version      : 13.5
Release      : 1.module_el8.5.0+1062+8eba5f44
Architecture : x86_64
Size         : 22 M
Source       : postgresql-13.5-1.module_el8.5.0+1062+8eba5f44.src.rpm
Repository   : @System
From repo    : appstream
...

这个问题通过卸载库解决了。

代码语言:javascript
复制
# rpm -e --nodeps libpq5

注意:使用"dnf“将尝试删除postgresql和postgresql-server (在许多情况下这可能很好),我们需要再次安装它们。通过使用"rpm“,我们不会碰它们,所以我们不需要重新安装。

最后安装正确的。

代码语言:javascript
复制
# dnf install libpq-13.3-1.el8_4.x86_64

现在一切都匹配了

代码语言:javascript
复制
#  dnf info --installed libpq* postgresql*
Installed Packages
Name         : libpq
Version      : 13.3
Release      : 1.el8_4
Architecture : x86_64
Size         : 720 k
Source       : libpq-13.3-1.el8_4.src.rpm
Repository   : @System
From repo    : appstream
...

Name         : postgresql
Version      : 13.5
Release      : 1.module_el8.5.0+1062+8eba5f44
Architecture : x86_64
Size         : 5.5 M
Source       : postgresql-13.5-1.module_el8.5.0+1062+8eba5f44.src.rpm
Repository   : @System
From repo    : appstream
...

Name         : postgresql-server
Version      : 13.5
Release      : 1.module_el8.5.0+1062+8eba5f44
Architecture : x86_64
Size         : 22 M
Source       : postgresql-13.5-1.module_el8.5.0+1062+8eba5f44.src.rpm
Repository   : @System
From repo    : appstream
....
票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/269473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档