MySQL到SQL Server的迁移

MySQL到SQL Server的迁移,mysql,sql-server,database,migration,Mysql,Sql Server,Database,Migration,我有一个mysql数据库,里面装满了我需要保留的数据,但是迁移到了SQLServer2008 我知道端到端的数据应该放在哪里,表到表,但我不知道如何移动数据。我在网上浏览过,但似乎有一些“解决方案”需要下载和运行。如果可能的话,我宁愿自己写脚本或代码 有人能推荐最好的方法吗?这里有几个选项: 在sql server端,您可以使用一种称为。这将允许您为sql server编写从mysql表返回数据的sql代码。您可以使用它来生成INSERT或SELECT INTO语句 您可以为mysql编写查询

我有一个mysql数据库,里面装满了我需要保留的数据,但是迁移到了SQLServer2008

我知道端到端的数据应该放在哪里,表到表,但我不知道如何移动数据。我在网上浏览过,但似乎有一些“解决方案”需要下载和运行。如果可能的话,我宁愿自己写脚本或代码


有人能推荐最好的方法吗?

这里有几个选项:

  • 在sql server端,您可以使用一种称为。这将允许您为sql server编写从mysql表返回数据的sql代码。您可以使用它来生成INSERT或SELECT INTO语句
  • 您可以为mysql编写查询以将数据导出为csv,然后使用sql server的大容量插入功能高效地导入csv数据
  • 您可以使用SQLServerIntegrationServices设置从mysql移动数据

无论您选择哪种,非数据工件(如索引、外键、触发器、存储过程和安全性)都必须手动移动。

我以前做过一次。首先,可以使用odbc mysql连接器将mssql服务器连接到mysql服务器

连接完成后,您可以编写数据库过程,就像编写两个mssql db的数据库过程一样。编写一些sql批处理脚本可能是最容易的,其中包括一个游标,您可以在其中遍历表的每一行,并根据字段确定将来需要该字段的位置

光标示例:


如果决定使用光标,可以使用参数来提高性能。我特别记得,
FORWARD\u ONLY
参数大大提高了性能

您是否尝试过MSFT中名为SQL Server Migration Assistance for MySQL的工具???

试试本教程。从Mysql迁移到SQL Server非常容易,而且正如前面提到的那样简单


谢谢

您可以使用SQL Server标准版附带的导入/导出向导

使用ODBC数据源从MySQL中选择“数据源”。注意:首先需要安装MySQL()的from ODBC驱动程序。然后,选择SQL Server目标。选择所有表,并启动它。您需要手动添加主键、外键和索引


更自动化的方法是使用,也是免费的。它的好处是为您自动重新创建关系和索引。可能是您的最佳选择。

+1链接服务器选项可能是我处理它的方式。您需要在SQL Server计算机上为MySQL提供ODBC连接器。