如何在 docker 安装中将 Openproject 数据库从 Postgresql v9.4 迁移到 v9.6?

How to migrate openproject database from Postgresql v9.4 to v9.6 within a docker installation?

我正在尝试使用新的 Docker image.Everything 将我的 OpenProject 从 v7.0 更新到 v8.0,在我尝试导入数据库之前进展顺利。新版本使用 Postgresql v9.6,与之前的 Postgresql v9.4 不兼容。 OpenProject 网站上有一个关于如何迁移到 Postgresql v9.6 的很好的指南:https://www.openproject.org/operations/upgrading/openproject-postgresql-migration-guide-9-6/。但它仅涵盖 linux 安装。

如何在 docker 内将 OpenProject 数据库从 Postgresql v9.4 迁移到 v9.6?

终于找到解决办法了。以下是迁移的一般步骤:

  • 创建当前安装的数据库备份:

    1. 连接到旧 Container v7.0
    2. 通过 supervisorctl stop < service_name >
    3. 停止 运行 服务,postgers 除外
    4. 创建名称为 "openproject"
    5. 的数据库的转储
    6. 退出容器并在其中复制创建的转储
  • 将数据库恢复到新安装:

    1. 在新容器 v8.0 中复制之前创建的转储
    2. 连接到新的 Container v8.0
    3. 通过 supervisorctl stop < service_name >
    4. 停止 运行 服务,postgers 除外
    5. 连接到 postgresql 数据库服务器并删除数据库 "openproject"
    6. 创建一个新的 "openproject" 数据库并将其分配给用户 "openproject"
    7. 使用转储文件恢复 openproject 数据库
    8. 退出并重启容器

OpenProject 系统将自动识别旧数据库结构并迁移表以匹配新版本。

我希望这会对某人有所帮助