Java 通过Talend正确完成数据库迁移

Java 通过Talend正确完成数据库迁移,java,database-migration,talend,Java,Database Migration,Talend,我不得不将数据从一个数据库迁移到另一个数据库,并决定使用Talend Open Studio完成这项任务。上个月我一直在阅读和研究,但只得到了不稳定的答案,这些答案并没有完全解决我的问题,或者带来了一些与我所问的问题无关的问题,也就是正确地完成迁移过程的一小部分 除此之外,我已经阅读了以下线程,它们可能会让您了解如何执行最基本的任务。。。将数据从一个表移动到另一个表: 以防万一,你可能会想,这些文档已经损坏,一些示例不再有效(比如可重用的作业),所以我正试图找出正确的方法,但研究过程过于复杂

我不得不将数据从一个数据库迁移到另一个数据库,并决定使用Talend Open Studio完成这项任务。上个月我一直在阅读和研究,但只得到了不稳定的答案,这些答案并没有完全解决我的问题,或者带来了一些与我所问的问题无关的问题,也就是正确地完成迁移过程的一小部分

除此之外,我已经阅读了以下线程,它们可能会让您了解如何执行最基本的任务。。。将数据从一个表移动到另一个表:

以防万一,你可能会想,这些文档已经损坏,一些示例不再有效(比如可重用的作业),所以我正试图找出正确的方法,但研究过程过于复杂(或者至少对我来说是这样)

到目前为止,我认为这个想法应该是为每个表创建一个作业+所需的查找,并协调每个作业,以便级联转储表。对于本例,我们假设如下所示:

  • 标准SQL Server数据库
  • 标准MySQL数据库
  • 两个数据库具有相同的表:相同的名称和字段
  • 4张桌子:Foo、Bar、FooBar和dougookup。FooBar是一个连接Foo和Bar的中间表,Dougookup连接Foo并存储附加信息。它将翻译如下:
    [foookup]-(1-N)-->[Foo][FooBar]-(1-N)-->[Bar]
对于这个简单的示例,我希望能够以最有效的方式将所有4个表从SQL Server迁移到MySQL,这意味着我可能希望明天删除对Woulookup的迁移,并且我更愿意为每个作业重用相同的连接


如果我能够正确地做到这一点,我将能够开始考虑管理约束和更复杂的东西,而我目前没有考虑这些问题。有什么建议吗?

非常好地描述了你的思维过程。总之,有几个问题:为什么要删除傻瓜库?表格的行数是多少?这是整个数据库还是有更多的表?为什么要使用Talend而不是好的ol'SQL转储?@tobi6非常简单:第三方程序可能会添加/删除超出我范围的表,我不知道我是否还需要它们,所以安全总比抱歉好。我需要能够按需调用它,转换数据并迁移到其他地方,因此我不能依赖转储工具。最后但并非最不重要的一点是,这只是一个示例,因此行计数可以达到您想要的最高值,现在应该是整个数据库。我希望一切都足够清楚。非常好地描述了你的思维过程。总之,有几个问题:为什么要删除傻瓜库?表格的行数是多少?这是整个数据库还是有更多的表?为什么要使用Talend而不是好的ol'SQL转储?@tobi6非常简单:第三方程序可能会添加/删除超出我范围的表,我不知道我是否还需要它们,所以安全总比抱歉好。我需要能够按需调用它,转换数据并迁移到其他地方,因此我不能依赖转储工具。最后但并非最不重要的一点是,这只是一个示例,因此行计数可以达到您想要的最高值,现在应该是整个数据库。我希望一切都很清楚。