postgres|报错: Symbol not found: _PQsslAttribute
postgres|报错: Symbol not found: _PQsslAttribute
MacOS系统
请大概浏览一遍全文,再进行操作。
一、前言
当我启动服务,连接 postgre s数据库的时候,出现了该错误。
二、分析原因
之前我本地的postgres数据库版本为9.6,我将其升级成了10.10版本。
初步猜测是由于我升级数据库导致的该问题。应该更新一下libpq.5.dylib 这个文件。
三、解决方法
备份原有的dylib文件,然后将新的链接过来。
执行第二条命令时请注意:因为安装postgres的方式不同,所以该文件的位置也不同。
我本机是通过 brew 安装的。所以执行第二条命令。
如果是通过dmg方式安装的。所以执行第三条命令
sudo mv /usr/lib/libpq.5.dylib /usr/lib/libpq.5.dylib.old
// 通过 brew 安装的postgres
sudo ln -s /usr/local/opt/postgresql@10/lib/libpq.5.dylib /usr/lib
// 通过 dmg 方式安装的 postgres
sudo ln -s /Applications/Postgres.app/Contents/Versions/9.4/lib/libpq.5.dylib /usr/lib
四、可能会遇到的问题
4.1. 报错:Operation not permitted
执行sudo mv /usr/lib/libpq.5.dylib /usr/lib/libpq.5.dylib.old命令时遇到操作权限问题。
分析原因
这是因为 Mac 系统安全模式的问题。
解决方法: 修改
重启机器 --> 按cmd + r(会出现一个选择选择语言的界面。别怕,点一下自己喜欢的语言就好) ---> 左上角选择工具 ---> 终端 ---> 然后输入 csrutil disable (出现 success 相关的内容) ---> 然后再输入 reboot (重启设备)
建议:在修改完相关内容后。按照上述步骤在终端输入
crutil enable来打开安全限制功能。
4.2 报错:Error: pg_config executable not found.
分析原因:
因为没有配置环境变量,所以找不到配置文件。
解决方法
将该命令添加到 ~/.bashrc或者~/.zshrc文件中。然后 source 执行该文件。eg: source ~/.zshrc
export PATH="/usr/local/opt/postgresql@10/bin:$PATH"
I will learn it when i need it ???

浙公网安备 33010602011771号