You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7环境下无法安装PostgreSQL 9.5/PostGIS 2.3求助

问题分析与解决方案

一、关于rpm安装提示的说明

你看到的package pgdg-centos95-9.5-3.noarch (which is newer than pgdg-centos95-9.5-2.noarch) is already installed是正常提示,不是错误。这说明你的系统里已经预先安装了更新版本的PostgreSQL YUM仓库配置包(9.5-3版),比教程里的9.5-2版更晚,所以不需要重复安装旧版本的仓库包,这一步其实已经完成了仓库配置。

二、为什么yum list | grep pgdg95结果不符合教程?

你用grep pgdg95的搜索逻辑有问题:

  • 这个命令只会显示已经从pgdg95仓库安装的包,而你此时还没安装PostgreSQL和PostGIS相关组件,自然看不到对应的包。
  • 教程里第三步应该是查看仓库中可用的PostgreSQL包,正确的命令应该是:
    yum list available | grep postgresql95
    
    这样就能看到pgdg95仓库里所有待安装的PostgreSQL 9.5相关包了。

三、正确安装PostgreSQL 9.5 + PostGIS 2.3的步骤

既然仓库已经配置完成,直接按以下步骤安装即可:

1. 确认pgdg95仓库已启用

先检查仓库状态,确保它在可用列表里:

sudo yum repolist enabled | grep pgdg

如果能看到pgdg95相关的仓库条目,说明配置正常。

2. 安装PostgreSQL 9.5

# 安装服务器和客户端核心包
sudo yum install postgresql95-server postgresql95

# 初始化数据库
sudo /usr/pgsql-9.5/bin/postgresql95-setup initdb

# 设置开机自启并启动服务
sudo systemctl enable postgresql-9.5
sudo systemctl start postgresql-9.5

3. 安装PostGIS 2.3

PostGIS 2.3对应PostgreSQL 9.5的包名是postgis23_95,直接安装即可:

sudo yum install postgis23_95

4. 启用PostGIS扩展

安装完成后,进入PostgreSQL数据库启用PostGIS:

# 切换到postgres用户
sudo -u postgres psql

# 在目标数据库中创建PostGIS扩展(比如默认的postgres数据库)
CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;

# 验证安装成功
SELECT postgis_version();

如果返回PostGIS 2.3的版本信息,就说明安装完成了。

四、如果遇到仓库找不到包的情况

如果执行安装命令时提示包不存在,可以先清理缓存并更新仓库:

sudo yum clean all
sudo yum makecache

再重新尝试安装。

内容的提问来源于stack exchange,提问作者khajlk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:49:19