温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

postgresql怎么升级版本

发布时间:2026-09-27 17:19:07 来源:亿速云 阅读:93 作者:小樊 栏目:数据库

下面给你一个较通用、安全的 PostgreSQL 升级思路,适用于 Linux(CentOS / Ubuntu 等)环境。不同发行版细节略有差异,但核心流程一致。


一、先明确两件事

  1. 当前版本
psql --version
# 或
postgres --version
  1. 数据目录位置
psql -c "SHOW data_directory;"

⚠️ 升级前一定要备份!

pg_dumpall > full_backup.sql
# 或物理备份数据目录

二、PostgreSQL 升级的两种方式

✅ 方式一:pg_upgrade(推荐,官方支持)

适合大版本升级(如 12 → 15)

步骤示例(以 12 → 15 为例)

  1. 安装新版本(不卸载旧版本)
# Ubuntu
sudo apt install postgresql-15

# CentOS
sudo yum install postgresql15-server
  1. 初始化新版本(如果未自动初始化)
/usr/pgsql-15/bin/postgresql-15-setup initdb
  1. 停止数据库
systemctl stop postgresql
  1. 使用 pg_upgrade
/usr/pgsql-15/bin/pg_upgrade \
  --old-datadir=/var/lib/pgsql/12/data \
  --new-datadir=/var/lib/pgsql/15/data \
  --old-bindir=/usr/pgsql-12/bin \
  --new-bindir=/usr/pgsql-15/bin \
  --check   # 先检查,不加 --check 才是真正升级
  1. 启动新版本
systemctl start postgresql-15

✅ 方式二:逻辑导出导入(最安全)

适合小库或跨平台迁移

# 导出
pg_dumpall -U postgres > all.sql

# 新版本导入
psql -U postgres -f all.sql

优点:

  • 不依赖旧版本
  • 可清理历史垃圾

缺点:

  • 慢(数据量大时不友好)

三、小版本升级(如 15.2 → 15.6)

✅ 直接 yum / apt 升级即可,无需迁移数据

sudo apt upgrade postgresql-15
# 或
sudo yum update postgresql15

重启服务:

systemctl restart postgresql

四、升级后必做检查

SELECT version();
SELECT * FROM pg_extension;

如有扩展(如 postgis):

ALTER EXTENSION postgis UPDATE;

五、常见坑提醒

  • ❌ 不要直接覆盖 data 目录
  • ❌ 不要跨大版本直接拷数据
  • ✅ 旧版本可先保留,确认无误再卸载

如果你能告诉我:

  • 操作系统(CentOS / Ubuntu / 银河麒麟等)
  • 当前 PG 版本 → 目标版本

我可以给你一步一步精确命令。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手