✅ 宝塔 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

相关推荐
茁壮成长的露露10 小时前
MongoDB分片案例
数据库·mongodb
小北方城市网10 小时前
Spring Boot 接口开发实战:RESTful 规范、参数校验与全局异常处理
java·jvm·数据库·spring boot·后端·python·mysql
AllData公司负责人10 小时前
【亲测好用】数据集成管理能力演示
java·大数据·数据库·开源
brevity_souls10 小时前
SQL Server 窗口函数简介
开发语言·javascript·数据库
倚-天-照-海10 小时前
Doris数据库基本概念
数据库
翼龙云_cloud10 小时前
阿里云渠道商:cpu 弹性扩容有哪些限制条件?
数据库·阿里云·云计算
陈聪.10 小时前
HRCE简单实验
linux·运维·数据库
APIshop10 小时前
实战代码解析:item_get——获取某鱼商品详情接口
java·linux·数据库
洛_尘10 小时前
MySQL 5:增删改查操作
数据库·mysql
老邓计算机毕设11 小时前
SSM养老院老人健康信息管理系统t4p4x(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·计算机毕业设计·ssm 框架·养老院老人健康管理系统