Windows 环境下创建 pgcrypto 扩展失败问题分析解决

文章目录

  • 背景
  • 解决思路
  • 现象
  • [基于 AI 搜索解决方法](#基于 AI 搜索解决方法)
    • [借助 Dependencies 工具可以快速查看的缺少的依赖库](#借助 Dependencies 工具可以快速查看的缺少的依赖库)
    • 解决方法

背景

UG 产品中的 PostgreSQL 15.6 没有 pgcrypto 扩展相关的文件 (dll, contorl 以及 SQL 文件)

解决思路

我找到了一个绿色版本的 PGSQL 15.7, 发现里面包含 pgcrypto 扩展相关的文件

然后放到我们 UG 产品的 PostgreSQL 15.6 中

现象

创建扩展 pgcrypto 的时候报错

create extension pgcrypto;

复制代码
C:\UNVGuard\opt\common-database0\bin\pgsql\bin>dir C:\UNVGuard\opt\common-database0\bin\pgsql\lib\pgcrypto.dll
 驱动器 C 中的卷没有标签。
 卷的序列号是 6AB8-9E0D

 C:\UNVGuard\opt\common-database0\bin\pgsql\lib 的目录

2026/05/14  09:28           126,464 pgcrypto.dll
               1 个文件        126,464 字节
               0 个目录 35,759,714,304 可用字节



postgres=# create extension pgcrypto;
ERROR:  could not load library "C:/UNVGuard/opt/common-database0/bin/pgsql/lib/pgcrypto.dll": The specified module could not be found.

两个环境, 一个是 win10 一个是 win11, 报错相同.

基于 Linux 的经验, 怀疑是缺少依赖的库文件.

基于 AI 搜索解决方法

借助 Dependencies 工具可以快速查看的缺少的依赖库

可以看到两个环境中都是缺少几个依赖库:

zlib1.dll, libcrypto-3-x64.dll, postgres.exe, VCRUNTIME140.dll

解决方法

zlib1.dll, libcrypto-3-x64.dll, VCRUNTIME140.dll 复制到 PGHOME/lib 目录下 与 PGHOME/bin 目录下

(如果已经存在, 则不复制进去)

F5 刷新, 再次检查依赖, 会发现依赖正常(无红色的了).

验证扩展是否可以正常创建了.

psql 复制代码
postgres=# \dx
                 List of installed extensions
  Name   | Version |   Schema   |         Description          
---------+---------+------------+------------------------------
 plpgsql | 1.0     | pg_catalog | PL/pgSQL procedural language
(1 row)

postgres=# begin;
BEGIN
postgres=*# create extension pgcrypto;
CREATE EXTENSION
postgres=*# \dx
                  List of installed extensions
   Name   | Version |   Schema   |         Description          
----------+---------+------------+------------------------------
 pgcrypto | 1.3     | public     | cryptographic functions
 plpgsql  | 1.0     | pg_catalog | PL/pgSQL procedural language
(2 rows)

postgres=*# rollback;
ROLLBACK
相关推荐
一杯奶茶¥1 小时前
系统重装后如何使用万能驱动软件给新系统安装驱动
windows·电脑·系统重装
IvorySQL2 小时前
PG 技术日报|2026-07-03
数据库·postgresql·开源
MOONICK3 小时前
windows原生条件变量支持
c++·windows
love530love3 小时前
AI Agent + 本地 ComfyUI 无头模式实战:关闭 IDE 后 AI 独立重启并完成图文生成
ide·人工智能·windows·python·音视频·agent·devops
梅羽落3 小时前
服务器安全(Windows Server+Linux)
服务器·windows·安全
迷路爸爸1804 小时前
Python collections 入门+实战
windows·python·c#·collections·dict
luoqice4 小时前
windows下实现运行mesiamtx服务器推拉流
运维·服务器·windows
海天鹰4 小时前
WIN10任务栏日期隐藏年显示星期几
windows
偏爱自由 !4 小时前
8. 泛型程序设计
java·开发语言·windows
碧蓝的水壶6 小时前
数据转换过程
java·开发语言·windows