Postgresql 如何将数据库从Odoo 9迁移到Odoo 11?

Postgresql 如何将数据库从Odoo 9迁移到Odoo 11?,postgresql,database-migration,odoo,odoo-9,odoo-11,Postgresql,Database Migration,Odoo,Odoo 9,Odoo 11,我想将数据从Odoo9社区迁移到Odoo11社区。所以我想写一些迁移脚本。但是,目前我不知道如何编写这样的迁移脚本 如何使用PostreSQL将数据从Odoo 9迁移到Odoo 11。 我可以通过连接两个版本的OdooRPC来迁移数据吗? 如果有人知道从哪里开始,请分享您的想法。您可以通过多种方式迁移数据。但是你需要非常了解奥多才能进行这样的迁移 原始SQL脚本。如果您是SQL专家,这可能是映射字段的好方法。考虑到根据您安装的模块,Odoo最多可以使用500个表,甚至更多 ETL工具,如

我想将数据从Odoo9社区迁移到Odoo11社区。所以我想写一些迁移脚本。但是,目前我不知道如何编写这样的迁移脚本

  • 如何使用PostreSQL将数据从Odoo 9迁移到Odoo 11。

  • 我可以通过连接两个版本的OdooRPC来迁移数据吗?


如果有人知道从哪里开始,请分享您的想法。

您可以通过多种方式迁移数据。但是你需要非常了解奥多才能进行这样的迁移

  • 原始SQL脚本。如果您是SQL专家,这可能是映射字段的好方法。考虑到根据您安装的模块,Odoo最多可以使用500个表,甚至更多

  • ETL工具,如Pentaho水壶。这也是一种昂贵的方法,但它有一个GUI

  • Openupgrade。它为主要的Odoo模块提供了迁移脚本(python)。您必须为自定义模块和第三方模块(如果没有)编写自己的迁移脚本。您需要遵循以下步骤:

  • 将Odoo 9.0 al的实例更新为最新提交
  • 将自定义模块(源代码)迁移到10.0版,然后再迁移到11.0版
  • 分析这些模块的数据库更改,以生成迁移脚本(将其存储在
    migrations
    文件夹中),从而将数据库结构从9.0版更新到10.0版,并更新到11.0版。您可以在中查看此类脚本的示例,它们经常执行SQL代码
  • 使用Openupgrade将数据库迁移到10.0版本,以解决所有冲突
  • 使用Openupgrade将数据库迁移到11.0版本

然而,我从未使用这些方法进行过完整的迁移,因为它们非常昂贵。因此,我的建议是部分迁移数据库,仅迁移基本数据(如果您想要稳定的安装)。您甚至可以使用csv文件,导出这些表并将其重新导入新数据库。

您可以通过多种方式迁移数据。但是你需要非常了解奥多才能进行这样的迁移

  • 原始SQL脚本。如果您是SQL专家,这可能是映射字段的好方法。考虑到根据您安装的模块,Odoo最多可以使用500个表,甚至更多

  • ETL工具,如Pentaho水壶。这也是一种昂贵的方法,但它有一个GUI

  • Openupgrade。它为主要的Odoo模块提供了迁移脚本(python)。您必须为自定义模块和第三方模块(如果没有)编写自己的迁移脚本。您需要遵循以下步骤:

  • 将Odoo 9.0 al的实例更新为最新提交
  • 将自定义模块(源代码)迁移到10.0版,然后再迁移到11.0版
  • 分析这些模块的数据库更改,以生成迁移脚本(将其存储在
    migrations
    文件夹中),从而将数据库结构从9.0版更新到10.0版,并更新到11.0版。您可以在中查看此类脚本的示例,它们经常执行SQL代码
  • 使用Openupgrade将数据库迁移到10.0版本,以解决所有冲突
  • 使用Openupgrade将数据库迁移到11.0版本

然而,我从未使用这些方法进行过完整的迁移,因为它们非常昂贵。因此,我的建议是部分迁移数据库,仅迁移基本数据(如果您想要稳定的安装)。您甚至可以使用csv文件,导出这些表并将其重新导入新数据库。

如果我是您,我会尽可能简化迁移,只导出主表(客户、产品等),然后在Odoo 11上重新导入它们。剩下的数据呢lol@Chesurthat没那么重要,哈哈,您可以随时检查旧Odoo intance上的旧数据。迁移数据的成本太高了。如果您想使用sql或python脚本来迁移数据,您需要非常了解Odoo。首先,您需要将Odoo 9升级到最新提交版本。我会给你写一个答案…我对odoo开发有想法,所以请分享你的想法,谢谢你的时间。如果我是你,我会尽可能简化迁移,只导出主表(客户、产品等),然后在odoo 11上重新导入它们,剩下的数据呢lol@Chesurthat没那么重要哈哈,您可以随时检查旧Odoo intance上的旧数据。迁移数据的成本太高了。如果您想使用sql或python脚本来迁移数据,您需要非常了解Odoo。首先,您需要将Odoo 9升级到最新提交版本。我会给你写一个答案…我对odoo开发有一些想法,所以请分享你的想法,谢谢你的时间。OpenUpgrade脚本对基本模块非常有效。对于自定义模块,您可以编写自己的脚本。所有这些都是关于将名称从一个版本更改为另一个版本的表。如果你擅长编写脚本,也许你应该加入OCA开发者,为OpenMigrate写些东西?如果您是新手,我建议您只使用原始模块迁移Odoo,然后升级自定义模块(或下载最新Odoo版本)。我为此制作了教程:@PiotrCierkosz当我尝试使用OpenUpgrade时,它回答说无法升级到版本10.0,所以我唯一剩下的选项是RPC。因为我没有能力使用原始Sql创建一种ETL工具。ThanksOpenUpgrade脚本对于基本模块来说工作得非常好。对于自定义模块,您可以编写自己的脚本。所有这些都是关于将名称从一个版本更改为另一个版本的表