我正在做数据库迁移工作。我必须将 MSSQL 中的数据库复制到 MySql 数据库。可以想出一个小的 java 实用程序来将表结构从 MSSQL 复制到 MySql 数据库。现在我必须将所有数据从 MSSQL 复制到 MySql。我尝试使用java中的结果集从表中获取所有数据,但它只能获取一小部分数据。是否有任何替代解决方案可以将所有数据从表获取到结果集或我可能使用的其他类似结构,以将相同的数据插入到 mysql Db 中。一个表有超过 25,00,000 条记录。

有帮助吗?

解决方案

JDBC结果集原则上应该允许您迭代大查询结果的完整性。

然而,通过Java进行可能不是最有效的方法。批量导出到文件和批量导入可能是要走的路。 MS似乎有一个可以导出的 bcp 实用程序。

其他提示

实现您所描述的数据库迁移的最佳方法是使用 ETL 工具 - 这里有一个关于 ETL 的很好的概述:

http://en.wikipedia.org/wiki/Extract,_transform,_load

您没有理由不能使用 JDBC 来执行此操作,因此,如果您打算自行开发,请详细说明“只能获取一小部分数据”:

  • 您正在运行的查询是什么?
  • 你有例外吗?
  • 您使用哪个 JDBC 驱动程序连接到 MS-SQL?
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top