下载吧 - 绿色安全的游戏和软件下载中心

软件下载吧

当前位置:软件下载吧 > 技术开发 > 数据库 > Docker环境下升级PostgreSQL的步骤方法详解

Docker环境下升级PostgreSQL的步骤方法详解

时间:2024-03-04 00:33作者:下载吧人气:22

前段时间接到了要升级数据库的需求,在公司大佬的指导下搞定了升级的方案,在此记录一下。

查阅PostgreSQL 官方文档 可以得知,官方提供了两种方式对数据库进行升级——pg_dumpall与pg_upgrade。

pg_dumpall 是将数据库转储成一个脚本文件,然后在新版数据库中可以直接导入。这种方式操作简单,跟着官方文档就能轻松操作,但是明显只适用于数据量较少的情况,在我的测试环境里,导入一个2g的数据库用了将近10分钟。

所以我这里选用的是 pg_upgrade ,这种方式是直接将数据文件升级到高版本,2g数据用时一分多钟。

目前我手上的项目的PgSql是跑在在Docker上面的,版本是10.x,需求是升级到13.x,简单讲一下步骤:

  • _upgrade需要用到新旧容器的bin跟data,所以首先将旧数据库容器的bin还有data文件复制到服务器;
  • 开启一个PG13的容器,这个是后面用于服务的正式容器(下文称为正式容器),然后另外开启一个临时容器(下文称为临时容器)用于升级数据文件,将这两个容器的数据库目录映射到同一个目录;
  • PG13的容器内部会缺少很多PG10的运行库,所以需要从旧容器中复制到临时容器里;
  • 临时容器将数据升级后,由于跟正式容器的数据文件目录映射到了同一个目录,所以数据可以正常使用;于跟正式容器的数据文件目录映射到了同一个目录,所以数据可以正常使用;

首先自然是拉取一个PG13的镜像,然后放好别动:

docker pull postgres:13.1
标签[db:关键字]

相关下载

查看所有评论+

网友评论

网友
您的评论需要经过审核才能显示

热门阅览

最新排行

公众号