✅ 宝塔 PostgreSQL 安装 contrib 扩展完整指南

目标:解决 Spring-AI extension "hstore" is not available 等错误

宝塔PostgreSQL 软件商店安装没有这些环境很坑👊、没事的就是有问题解决问题😊

适用系统:Linux(如 CentOS、OpenCloudOS、Ubuntu 等)

适用环境:通过 宝塔面板 安装的 PostgreSQL

🔍 第一步:确认 PostgreSQL 版本

使用这个命令进入对应的数据库 可以查看对应的版本 我的数据库数 ai_rag

bash 复制代码
 psql -U postgres -d ai_rag 

📌 记下版本号(如 16.1),后续需下载完全一致的源码


📥 第二步:下载对应版本的 PostgreSQL 源码

bash 复制代码
cd /tmp

# 替换为你的实际版本,例如 16.1
wget https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.gz

tar -zxvf postgresql-16.1.tar.gz
cd postgresql-16.1

✅ 官方源码地址:https://www.postgresql.org/ftp/source/


⚙️ 第三步:获取原始编译参数并执行 configure

bash 复制代码
# 查看宝塔 PostgreSQL 的编译参数
/www/server/pgsql/bin/pg_config --configure

示例输出:

执行 configure(去掉单引号,直接使用参数)

bash 复制代码
./configure --prefix=/www/server/pgsql --without-readline

✅ 此步骤不会重新安装 PostgreSQL ,仅生成 contrib 编译所需的 Makefile.global 文件。

🛠️ 第四步:编译并安装 contrib 扩展

方式 A:只安装 hstore(推荐先试这个、如果只是缺这个的话)

bash 复制代码
cd contrib/hstore
make
make install

成功截图

方式 B:一次性安装所有常用 contrib 扩展(推荐长期使用)

⚠️ 注意:这个不一定会成功 可能会导致拓展没有成功比如 uuid-oss

bash 复制代码
cd /tmp/postgresql-16.1/contrib
make all
 make install

✅ 第五步:验证扩展是否安装成

1. 检查文件是否存在

bash 复制代码
ls /www/server/pgsql/share/extension/hstore.control
ls /www/server/pgsql/lib/hstore.so

2. 在数据库中启用扩展

bash 复制代码
-- 连接到你的数据库(如 ai_rag)
psql -U postgres -d ai_rag

-- 创建扩展(无报错即成功)
CREATE EXTENSION IF NOT EXISTS hstore;

3.✅ 验证最终结果

bash 复制代码
SELECT name, default_version FROM pg_available_extensions WHERE name = 'hstore';

🧪 第六步:重启应用验证

现在你的 Spring Boot 应用应该能正常启动,不再报:

bash 复制代码
ERROR: extension "hstore" is not available

📝 注意事项

项目 说明
版本必须严格一致 源码版本 ≠ 运行版本 → .so 不兼容 → 数据库崩溃
无需重新编译主程序 只需 configure,不需要 make && make install 主程序
宝塔用户常见问题 宝塔默认不装 contrib,需手动补全
权限问题 make install 需要 root 权限,记得加 sudo

如果UUID创建报错参考 PostgreSQL 安装UUID

相关推荐
ClouGence11 小时前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将13 小时前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils1 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
倔强的石头_3 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_5 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
冬奇Lab6 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence6 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神7 天前
三、用户与权限管理
数据库·mysql
麦聪聊数据7 天前
数据服务化时代:企业数据能力输出的核心路径
数据库