McK*_*bet 21 postgresql debian
我试图pg_dump在Debian上运行的PostgreSQL 9.0.4服务器上执行,我收到以下错误:
./pg_dump: error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
libpq.so.5是一个链接,libpq.so.5.3如下所示
lrwxrwxrwx 1 root root 12 Jun 27 16:24 libpq.so.5 -> libpq.so.5.3
-rwxr-xr-x 1 root root 180749 Jun 21 02:43 libpq.so.5.3
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
Yah*_*oui 22
试试这个:
1:了解路径 libpq.so.5
find / -name libpq.so.5
Run Code Online (Sandbox Code Playgroud)
输出示例:
/usr/pgsql-9.4/lib/libpq.so.5
如果一无所获,请检查您是否已经为postgresql版本和OS平台安装了合适的postgresql-libs
2:"知名"库路径中的库的符号链接,如/usr/lib:
ln -s /usr/pgsql-9.4/lib/libpq.so.5 /usr/lib/libpq.so.5
Run Code Online (Sandbox Code Playgroud)
注意:如果您的平台是64位,您还必须符号链接到64位库路径:
ln -s /usr/pgsql-9.4/lib/libpq.so.5 /usr/lib64/libpq.so.5
Run Code Online (Sandbox Code Playgroud)
3:快乐!
jmu*_*sch 17
因为这是该错误的顶部搜索结果。我将添加更新的答案。我在尝试启动 django 服务器时收到错误。
我没有安装 postgres 的东西。
尝试:
sudo apt install libpq-dev
# or
sudo apt install libpq5
Run Code Online (Sandbox Code Playgroud)
看:
缺少libpq依赖项很可能是由于psycopg2通过安装pip而不是apt. 因此,为了避免基于 Debian 的发行版(例如 Ubuntu 和 Raspberry Pi OS)出现任何问题,请执行以下操作:
sudo apt install python3-psycopg2
Run Code Online (Sandbox Code Playgroud)
这将很好地提取所有需要的依赖项,其中有libpq
这些libpq文件在哪个目录中?您可以尝试设置环境变量LD_LIBRARY_PATH以指向此目录或确保它在标准位置.
另外,为什么libpq.so.5链接中没有显示"如下所示"部分?也许你应该跑ldconfig?
我在RHEL 6.5的Postgres 9.5上收到了相同的错误消息,这使我进入了这篇文章。但是,对该文件的查找未libpq.so.5返回任何内容,这使事情更加混乱。
最后,以下符号链接使其运行
ln -s /opt/rh/rh-postgresql95/root/usr/lib64/libpq.so.rh-postgresql95-5 /usr/lib64/libpq.so.rh-postgresql95-5
ln -s /opt/rh/rh-postgresql95/root/usr/lib64/libpq.so.rh-postgresql95-5 /usr/lib/libpq.so.rh-postgresql95-5
Run Code Online (Sandbox Code Playgroud)
这些路径用于RHEL,用于find / -name libpq.so定位安装并将其添加到相同的目标文件夹中,/usr/lib/并/usr/lib64/使用原始文件名。
根本原因似乎是安装未将此文件放置到共享位置。
| 归档时间: |
|
| 查看次数: |
67676 次 |
| 最近记录: |