龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > MySQL 技术 >

使用mss2sql工具将SqlServer转换为Mysql全记录

时间:2014-08-26 02:51来源:网络整理 作者:网络 点击:
分享到:
上篇文章我们讲诉了在mssql数据转换成mysql数据中,用Navicat Premium导入数据很完美,但是创建表的时候数据类型转换不是很完美,本文我们来讲诉下用mss2sql工具来创建表,顺便说下导入数

今天想用ruby on rails做一个小项目,需要用到mysql数据库,项目中的数据已经有了,只不过是保存在Sql Server中,用rails倒是可以操作Sql Server,但是总感觉不怎么搭配,想转换后使用,网上翻了下,转换的办法有很多,通过ODBC的,通过PHP程序的,写SQL代码的,觉得转换还是用工具吧,先是用ODBC试着玩了下,发现Sql Server的导出功能对mysql ODBC的支持并不是太好

ODBC分32,64位,一开始下了个32位,在Win7 64位上面显示不出来,又从mysql官网下载了64位版本才可以选择添加

32位版本:

http://www.jb51.net/database/142740.html

64位版本:

http://www.mysql.com/downloads/connector/odbc/

点击完成后你需要选择自己的mysql数据库源

这样就能在ODBC里面看到了.

可惜在sql server的导出数据中转换不成功,说什么体系结构不匹配.

没办法,继续在网上找,发现一篇博客说可以使用mss2sql来转换,结果在win7 64位上转换成功:

mss2sql下载地址: http://www.jb51.net/softs/209207.html

下载后打开压缩包

运行mss2sql

默认就是Move to MysQL server directly,选择下一步

继续下一步,稍等片刻

这次是需要连接到MySQL server了,我是本地,所以选择了Local,填写上你的用户名和密码

继续等待连接

选择在MS SQL里面需要转换的数据库

点下一步,如果mysql里面有同名的数据库,会让你来选择转换的方式,分别是

Overwrite the entire database:覆盖整个数据库Overwrite existing tables only:只覆盖存在的表Skip existing tables:跳过存在的表Merge:合并

我的mysql里面的只是一张空数据库,所以选了第一项,整个覆盖.

选择需要转换的表,添加到转换列表中,我是需要全部的表,所以选择了Add all

然后就是一段时间的等待

这个表里面的数据并不多,花费时间稍长,大概有10分钟,如果表大的话,可能用程序来转换会快一些,有方便的办法也请告之为谢

下面就是转换成功后的表格了,里面的数据OK,中文也没有什么问题.

本文操作环境为:

win7 64位,sql server 2008 express, Mysql 3.23.49,apache 1.3.33,

精彩图集

赞助商链接