我想将数据从 Odoo 9 社区迁移到 Odoo 11 社区。所以我想写一些迁移脚本。但是,目前我不知道如何编写像 OpenUpgrade 这样的迁移脚本。 .
我如何使用 PostreSQL 将数据从 Odoo 9 迁移到 Odoo 11。
是否可以通过连接两个版本的OdooRPC来迁移数据?
如果有人知道从哪里开始,请分享您的想法。
最佳答案
您可以通过多种方式迁移数据。但是您需要非常了解 Odoo 才能进行此类迁移。
原始 SQL 脚本。如果您是 SQL 专家,这可能是映射字段的好方法。考虑到根据您安装的模块,Odoo 可以使用多达 500 个表甚至更多。
ETL 工具,例如 Pentaho Kettle。这也是一种昂贵的方式,但它有一个 GUI。
开放升级。它为主要的 Odoo 模块提供迁移脚本(python)。您将不得不为自定义模块和第三方模块(如果他们没有)编写自己的迁移脚本。您需要执行以下步骤:
- 将 Odoo 9.0 al 的实例更新到最新的提交
- 将您的自定义模块(源代码)迁移到 10.0 版本,然后迁移到 11.0 版本
- 分析这些模块的数据库变化以制作迁移脚本(将其存储在
migrations
文件夹中)以将数据库结构从版本 9.0 更新到 10.0 以及版本和 11.0.您可以在 Openupgrade project 中查看此类脚本的示例。 , 他们经常执行 SQL 代码。 - 使用Openupgrade将数据库迁移到10.0版本,解决所有冲突
- 使用Openupgrade将数据库迁移到11.0版本
但是,我从来没有使用这些方法进行过完整的迁移,因为它们非常昂贵。所以我的建议是部分迁移数据库,只迁移基本数据(如果你想要一个稳定的安装)。您甚至可以使用 csv 文件,导出这些表格并将它们重新导入到新数据库中。
关于postgresql - 如何将数据库从 Odoo 9 迁移到 Odoo 11?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51902464/