首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将数据从SQL Server2005导出到MySQL

如何将数据从SQL Server2005导出到MySQL
EN

Stack Overflow用户
提问于 2008-08-01 16:22:42
回答 5查看 96.3K关注 0票数 90

我一直在和SQL Server 2005拼命工作,试图获取大量的数据。我得到了一个包含近300个表的数据库,我需要将其转换为MySQL数据库。我的第一个调用是使用bcp,但不幸的是它不能产生有效的CSV -字符串没有封装,所以你不能处理任何带有逗号的字符串(或者任何你用来作为分隔符的东西),我仍然需要手工编写所有的create table语句,因为很明显CSV没有告诉你任何关于数据类型的信息。

更好的做法是,如果有一些工具可以同时连接到SQL Server和MySQL,那么就复制一份。您丢失了视图、存储过程、触发器等,但是将一个只使用基类型的表从一个数据库复制到另一个数据库并不困难……是吗?

有没有人知道这样的工具?我不介意它做了多少假设或发生了什么简化,只要它支持整数、浮点数、日期时间和字符串。我必须做大量的修剪、规范化等工作,所以我不关心是否保存键、关系或其他类似的东西,但我需要快速获得初始数据集!

EN

回答 5

Stack Overflow用户

发布于 2008-08-01 17:54:08

我找到的最好的方法是MySQL提供的MySQL Migration Toolkit。我已经在一些大型迁移项目中成功地使用了它。

票数 59
EN

Stack Overflow用户

发布于 2008-09-15 16:11:21

SQL Server2005的“标准版”、“开发版”和“企业版”都有SSIS,它取代了SQL server2000中的DTS。SSIS有一个到它自己的DB的内置连接,您可以找到其他人为MySQL编写的连接。Here就是一个例子。一旦有了连接,您就应该能够创建一个SSIS包来在两者之间移动数据。

我不需要将数据从SQLServer移动到MySQL,但我想一旦安装了MySQL连接,它的工作方式就像在两个SQLServer数据库之间移动数据一样,这非常简单。

票数 9
EN

Stack Overflow用户

发布于 2008-09-15 16:23:13

使用MSSQL Management Studio,我已经将表与MySQL OLE DB进行了转换。右键单击您的数据库并转到“任务->导出数据”,从那里您可以指定一个MsSQL OLE DB源,MySQL OLE DB源,并创建两个数据源之间的列映射。

您很可能希望在MySQL目标上预先设置数据库和表(导出希望自动创建表,但这通常会导致失败)。通过右键单击数据库,可以使用"Tasks->Generate Scripts“在MySQL中快速创建表。一旦生成了创建脚本,您将需要单步执行并搜索/替换MSSQL到MYSQL中存在的关键字和类型。

当然,您也可以像正常一样备份数据库,并找到一个实用程序来恢复MYSQL上的MSSQL备份。然而,我不确定是否存在一个。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档