将租户从一个db复制到另一个db

时间:2014-11-24 12:53:34

标签: junit hybris

是否可以复制,例如从DB1到DB2的junit-Tenant,如果是,怎么做?

当我连接到另一个数据库(目前没有初始化的junit-tenant)时,我不想丢失我的testdata。

非常感谢!

2 个答案:

答案 0 :(得分:1)

你可以使用Impex做到这一点(但可能会出现一些错误),你必须单独进行密码(至少是AFAIK)。 此外,hybris从不删除DB中的字段。您必须从DB1中删除可能已在过去创建但不再属于数据模型的属性(因此不在DB2上创建)。

导出(无密码):

  1. 系统 - >工具 - >脚本生成器
  2. 点击"生成"
  3. 复制结果内容。
  4. 从脚本中删除这些字段:[@ password,encodedPassword,password,passwordAnswer,passwordEncoding,passwordQuestion]来自生成的脚本
  5. 转到系统 - >工具 - >导出
  6. 选择模式(重新)轻松导入
  7. 粘贴以前复制的脚本
  8. 点击保存
  9. 点击“运行”
  10. 完成后,下载目标结果(数据+媒体zip文件)
  11. 导出密码:

    1. 转到系统 - >工具 - >导出
    2. 选择模式(重新)import strict
    3. 粘贴此内容:

      ----------------------------------------------- --------

      #used'标头验证模式'在脚本生成期间是:import_strict

      "#%impex.setLocale(新语言环境("" zh"""""") );"

      ----------------------------------------------- --------

      ----扩展名:核心----类型:用户----

      "#%impex.setTargetFile("" User.csv"");" insert_update User;& Item; @password [translator = de.hybris.platform.impex.jalo.translators.UserPasswordTranslator]; encodedPassword; password; passwordAnswer; passwordEncoding; passwordQuestion; uid [unique = true,allownull = true] "#%impex.exportItems("" User"",false);"

      ----扩展名:核心----类型:客户----

      "#%impex.setTargetFile("" Customer.csv"");" insert_update Customer;& Item; @password [translator = de.hybris.platform.impex.jalo.translators.UserPasswordTranslator]; encodedPassword; password; passwordAnswer; passwordEncoding; passwordQuestion; uid [unique = true,allownull = true] "#%impex.exportItems(""客户"",false);"

      ----扩展名:核心----类型:员工----

      "#%impex.setTargetFile("" Employee.csv"");" insert_update Employee;& Item; @password [translator = de.hybris.platform.impex.jalo.translators.UserPasswordTranslator]; encodedPassword; password; passwordAnswer; passwordEncoding; passwordQuestion; uid [unique = true,allownull = true] "#%impex.exportItems(""员工"",false);"

    4. 点击保存

    5. 点击“运行”
    6. 完成后,下载目标结果
    7. 导入(无密码):

      • 转到系统 - >工具 - >导入
      • 将数据zip文件上传到"导入文件"
      • 将本地设置设为" en" (或您在导出脚本中使用的那个)
      • 设置模型以轻松导入
      • 将错误模式设置为忽略
      • 点击下一步
      • 将媒体zip文件上传到"导入媒体"
      • 点击开始

      导入密码:

      • 转到系统 - >工具 - >导入
      • 将数据zip文件上传到"导入文件"
      • 将本地设置设为" en" (或您在导出脚本中使用的那个)
      • 将模型设置为import strict
      • 将错误模式设置为忽略
      • 点击开始

答案 1 :(得分:0)

并非没有重大努力。没有简单的方法。

您可以做的最好是始终从impex初始化您的数据。