问题描述:
启动fastapi服务时提示psycopg2的错误:
Traceback (most recent call last):
File "ruiqi_qdp_verify_server.py", line 6, in <module>
from apps.query_qdp.interact_qdp import main as qdp_main
File "/home/rhino/lxc/ruiqi_qdp_verify/apps/query_qdp/interact_qdp.py", line 16, in <module>
from utils.pipeline_pgsql import ItemToPG
File "/home/rhino/lxc/ruiqi_qdp_verify/utils/pipeline_pgsql.py", line 6, in <module>
import psycopg2
File "/home/rhino/envs/python3_django/lib/python3.6/site-packages/psycopg2-2.8.6-py3.6-linux-x86_64.egg/psycopg2/__init__.py", line 5
from psycopg2._psycopg import ( # noqa
ImportError: libpq.so.5: cannot open shared object file: No such file or directory
加载共享库时出错: libpq.so.5:无法打开共享对象文件:没有这样的文件或目录
解决:
Stack Overflow用户
发布于 2015-03-12 21:48:01
试试这个:
1:知道libpq.so.5的路径
find / -name libpq.so.5
输出示例:
/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
注意:如果您的平台是64位的,则还必须符号链接到64位的库路径:
ln -s /usr/pgsql-9.4/lib/libpq.so.5 /usr/lib64/libpq.so.5
PS:我是把两个位置都复制了,用的是root
[root@localhost ~]# ln -s /usr/pgsql-11/lib/libpq.so.5 /usr/lib/libpq.so.5
[root@localhost ~]# ln -s /usr/pgsql-11/lib/libpq.so.5 /usr/lib64/libpq.so.5