下面给你一个较通用、安全的 PostgreSQL 升级思路,适用于 Linux(CentOS / Ubuntu 等)环境。不同发行版细节略有差异,但核心流程一致。
psql --version
# 或
postgres --version
psql -c "SHOW data_directory;"
⚠️ 升级前一定要备份!
pg_dumpall > full_backup.sql
# 或物理备份数据目录
pg_upgrade(推荐,官方支持)适合大版本升级(如 12 → 15)
# Ubuntu
sudo apt install postgresql-15
# CentOS
sudo yum install postgresql15-server
/usr/pgsql-15/bin/postgresql-15-setup initdb
systemctl stop postgresql
/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 才是真正升级
systemctl start postgresql-15
适合小库或跨平台迁移
# 导出
pg_dumpall -U postgres > all.sql
# 新版本导入
psql -U postgres -f all.sql
优点:
缺点:
✅ 直接 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;
如果你能告诉我:
我可以给你一步一步精确命令。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。