PostgreSQL 14(RHEL 8环境)无法创建uuid-ossp扩展问题咨询
解决PostgreSQL 14在RHEL 8上无法创建uuid-ossp扩展的问题
问题根源
uuid-ossp是PostgreSQL官方扩展,在RHEL系统的PostgreSQL RPM包体系中,该扩展并不包含在主服务器包内,而是作为独立的postgresql14-contrib包提供。手动复制文件无法解决权限、依赖或版本匹配问题,必须通过官方包管理工具安装。
解决步骤
安装postgresql14-contrib包
使用root用户执行包安装命令:dnf install postgresql14-contrib若系统仍使用yum包管理器,替换为:
yum install postgresql14-contrib验证扩展文件路径
安装完成后,检查动态库文件是否存在:ls /usr/pgsql-14/lib/uuid-ossp.so同时确认扩展定义文件:
ls /usr/pgsql-14/share/extension/uuid-ossp.*重新创建扩展
切换到postgres用户并进入psql终端:su - postgres psql执行创建扩展命令:
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";确认扩展加载状态
查询系统扩展表验证结果:SELECT * FROM pg_extension;此时应能看到uuid-ossp的相关记录。
额外注意事项
- 升级PostgreSQL时,contrib包版本必须与主服务器版本严格一致,禁止跨版本混用。
- 避免手动复制扩展文件,官方包管理工具会自动处理权限、依赖及版本匹配问题,手动操作易引发隐性故障。
内容的提问来源于stack exchange,提问作者Michael Bond
相关产品推荐
相关产品推荐

