引言
最近 PostgreSQL 发布了 17 的正式版本,作为一个狂热的新版本追随者当然需要更新到最新版本,以下是我将 Postgres 16 升级到 17 版本并完成数据迁移的过程记录
创建新版数据库
- 我的数据库主要使用 docker 启动,docker compose 脚本如下:
yamlversion: '3.8'
services:
# 旧版本数库
postgres16:
container_name: postgres16
image: postgres:16-alpine
volumes:
- /data/postgre16:/var/lib/postgresql/data
ports:
- '5432:5432'
environment:
- POSTGRES_PASSWORD=xxxxxx
- POSTGRES_DB=example
restart: always
networks:
- pgsql
# 新版本数库,端口号可以随意指定,在数据完成迁移后将会使用默认的 5432 端口
postgres17:
container_name: postgres17
image: postgres:17-alpine
volumes:
- /data/postgre17:/var/lib/postgresql/data
ports:
- '5433:5432'
environment:
- POSTGRES_PASSWORD=xxxxxx
- POSTGRES_DB=example
restart: always
networks:
-