0

我需要将所有数据从 MS SQL 服务器复制到 MySQL 服务器。我打算使用 Quartz 调度程序来执行此操作。此调度程序将每晚运行并将数据从 MS-SQL-Server 移动到 MySQL 服务器。谁能告诉这是否可以,或者有没有其他更好的方法可以做到这一点?

更新:
我只需要传输一张有 40 列的表(从 MS SQL 服务器到 MySQL)

4

5 回答 5

1

除非绝对必须,否则我不会涉及 java:java 不会增加任何价值,但会增加额外的复杂性。

这是一个“DBA”类型的任务,属于使用 cron 选项卡安排的脚本。

如果我正在实现它,我会将源数据库导出为 SQL 脚本,然后通过在目标上运行它来导入它。

于 2013-02-20T08:11:24.003 回答
0

我建议您使用http://www.talend.com来完成类似的任务。

更新

Talend Open Studio for Data Integration 是开源的,这里还有一些其他特性是专有细节

于 2013-02-20T07:59:42.993 回答
0

SQL Server Management Studio 的“导入数据”任务(右键单击数据库名称,然后单击任务)将为您完成大部分工作。从要将数据复制到的数据库中运行它。

如果表不存在,它将为您创建它们,但您可能必须重新创建任何索引等。如果表确实存在,它将默认附加新数据,但您可以调整(编辑映射),以便删除所有现有数据。

我一直都在使用它,而且效果很好。

大卫

于 2013-02-20T08:01:04.937 回答
0

正如 PbxMan 所说,我会使用 ETL,但我推荐 Pentaho ( http://wiki.pentaho.com/display/EAI/Spoon+User+Guide ),我认为这对于这样简单的工作要容易得多

于 2013-02-20T14:24:18.803 回答
0

我同意@bohemian - 每晚运行一个工作来转移一个表听起来像是一个很好的 cron 工作(或“计划任务”,如果在 Windows 上)的候选人。使用像 Quartz 这样的框架来完成这项任务似乎有点过头了。

将数据从 SQL Server 移动到 MySQL 的解决方案有很多,其他的也列出了很好的解决方案,例如 Talend。如果只传输某些列对您有利(例如,为了避免泄漏PII),我的产品 SQLpipe 可能会有所帮助,因为它传输查询的结果,而不是整个表。

这是一篇博客文章,展示了如何使用该产品将数据从 SQL Server 传输到 MySQL

于 2022-02-13T08:15:14.480 回答