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

无法获取RHEL 7的Postgres 12.13安装程序,咨询升级最优方案

PostgreSQL 12.5 升级到 12.13(RHEL 7 环境)的优化方案

针对你在RHEL 7上无法找到PostgreSQL 12.13预编译安装包的情况,完全不需要通过备份/恢复全量数据库来完成小版本升级,以下是更高效的替代方案:

方案1:从源码编译安装PostgreSQL 12.13(最可靠的自定义安装方式)

PostgreSQL小版本(同一主版本号,如12.x)升级仅需替换二进制文件,无需迁移数据。步骤如下:

  • 安装编译依赖:
    yum install gcc make readline-devel zlib-devel openssl-devel libxml2-devel libxslt-devel
    
  • 下载PostgreSQL 12.13源码包,解压后进入源码目录:
    wget https://ftp.postgresql.org/pub/source/v12.13/postgresql-12.13.tar.gz
    tar zxf postgresql-12.13.tar.gz
    cd postgresql-12.13
    
  • 配置编译参数(指定安装路径,避免覆盖旧版本):
    ./configure --prefix=/usr/local/pgsql-12.13
    
    若旧版本启用了特定扩展或特性,可通过旧版本的pg_config --configure查看原有配置,在configure中添加对应参数保持一致。
  • 编译并安装:
    make && make install
    
  • 替换旧版本二进制文件:
    1. 停止PostgreSQL服务:systemctl stop postgresql-12
    2. 备份旧的二进制目录:mv /usr/pgsql-12/bin /usr/pgsql-12/bin.12.5
    3. 创建软链接指向新编译的二进制:ln -s /usr/local/pgsql-12.13/bin /usr/pgsql-12/bin
  • 启动服务并验证版本:
    systemctl start postgresql-12
    psql -V  # 应显示psql (PostgreSQL) 12.13
    
  • 最后更新数据库统计信息:
    vacuumdb --all --analyze-in-stages
    

方案2:检查PostgreSQL官方yum仓库(快速升级备选)

虽然RHEL 7已进入维护阶段,但可尝试添加PostgreSQL官方yum仓库,直接通过包管理器升级:

  • 安装仓库配置:
    yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
    
  • 执行升级:
    yum update postgresql12-server postgresql12
    
    若提示无可用包,则说明官方已停止提供RHEL 7的12.13包,改用方案1即可。

关键注意事项

  • 升级前务必备份整个数据目录:
    cp -rp /var/lib/pgsql/12/data /var/lib/pgsql/12/data.upgrade.backup
    
  • 若使用了第三方扩展(如PostGIS),需用新编译的pg_config重新编译安装对应扩展版本,确保兼容性。
  • 小版本升级无需使用pg_upgrade工具,仅替换二进制并重启即可完成,这是官方推荐的高效方式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 21:50:37