首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Debian上的postgreSQL数据库从14升级到15

将Debian上的postgreSQL数据库从14升级到15
EN

Unix & Linux用户
提问于 2023-02-13 06:20:15
回答 2查看 1.3K关注 0票数 1

我想知道如何将数据从现有的PostgreSQL 14安装升级到15。

我通过apt自动安装了PG 15,所以我看到了

代码语言:javascript
复制
# dpkg -l || grep ii | cut -d" " -f3 | grep postgresql-1

postgresql-14
postgresql-15

但数据仍在第14页。

有两种服务

代码语言:javascript
复制
service postgresql@14-main status

代码语言:javascript
复制
service postgresql@15-main status
EN

回答 2

Unix & Linux用户

发布于 2023-02-13 06:20:15

确保您仍然在旧的14集群上运行,然后用

代码语言:javascript
复制
pg_dumpall -F t > ~/backup_postgres_all_dbs.tar

停止仍然为空的默认安装的postgreSQL 15集群,并删除它。

代码语言:javascript
复制
pg_dropcluster 15 main --stop

将14个集群升级到最新版本(目前为15个)

代码语言:javascript
复制
pg_upgradecluster 14 main

这可能需要几个小时。完成后,请检查升级后的集群是否工作:

代码语言:javascript
复制
service postgresql@14-main stop
service postgresql@15-main start

您的14个集群现在应该“关闭”。您可以验证它是否运行:

代码语言:javascript
复制
pg_lsclusters

Ver Cluster Port Status Owner    Data directory              Log file
14  main    5433 down   postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log
15  main    5432 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log

检查使用postgreSQL的应用程序是否工作(最终调整psql-15配置中的端口)。如果所有的东西都是fin,那么用

代码语言:javascript
复制
# !be really sure to call this!
# !DON'T BE TOO FAST!!! # pg_dropcluster 14 main

把旧的包裹拿掉。

代码语言:javascript
复制
apt-get purge postgresql-14 postgresql-client-14

(注:这很可能也适用于卡利)

改编自:https://www.paulox.net/2022/04/28/upgrading-postgresql-from-version-13-to-14-on-ubuntu-22-04-jammy-jellyfish/

票数 1
EN

Unix & Linux用户

发布于 2023-02-13 06:44:14

或转储并使用

重新导入数据

代码语言:javascript
复制
sudo -u postgres pg_dumpall --cluster 14/main > ~/backup_postgres_all_dbs.sql
sudo -u postgres psql -d postgres --cluster 15/main -f ~/backup_postgres_all_dbs.sql

请参阅https://unix.stackexchange.com/a/707827/20661

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/735327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档