PostgreSQL15安装plpython3u扩展报错unknown error126求助
解决PostgreSQL 15中plpython3u扩展加载失败(错误126)的办法
核心匹配检查
PostgreSQL的plpython扩展与Python版本强绑定,EDB版PostgreSQL 15的plpython3.dll基于Python 3.10编译,需先确认:
- 安装64位Python 3.10(必须与PostgreSQL位数一致,32位Python会直接导致加载失败)
- 确保PostgreSQL服务账户(默认
NT SERVICE\PostgreSQL Server 15)对Python安装目录(如C:\Python\Python310)有读取和执行权限,可通过文件夹属性→安全面板添加该账户并配置权限。
环境变量修正
- 删除Stack Builder自动生成的
PYTHONHOME环境变量,避免路径冲突 - 将Python安装根目录(
C:\Python\Python310)和Scripts目录(C:\Python\Python310\Scripts)添加到系统PATH最前端 - 重启PostgreSQL服务,确保新环境变量生效
依赖问题排查与修复
错误126多因依赖缺失,可按以下操作处理:
- 用Dependency Walker工具打开
C:/Program Files/PostgreSQL/15/lib/plpython3.dll,查看是否有缺失的依赖项(常见为Python核心dll或VC++运行库) - 安装Visual Studio 2019版本的64位VC++ Redistributable运行库,EDB版PostgreSQL 15依赖该版本运行库
错误操作回滚
停止手动复制python310.dll到C:\Windows\System32并重命名的操作,该行为会破坏系统Python环境,导致更多异常。
重新安装扩展(可选)
若以上步骤无效,通过Stack Builder重新安装plpython3语言包:
- 打开Stack Builder,选择目标PostgreSQL 15实例
- 在「Language Packs」分类下找到「plpython3」扩展,重新执行安装
- 安装完成后再次执行
CREATE EXTENSION plpython3u;
内容的提问来源于stack exchange,提问作者Guilherme Rodrigues
相关产品推荐
相关产品推荐

