[转]将MSSQL数据导入MySQL

from : http://topic.youkuaiyun.com/t/20060925/16/5046715.html

 

 

由于工作需要,需要将MSSQL数据库中的信息移植到MySQL当中。在网上查了很多资料,大多说得比较简略,一般都是通

 

过odbc来进行转换,然后根据出错信息对表进行修改。最初,也尝试了这种办法,发现MSSQL的提示信息很少,而错误却

 

很多,所以这种办法并不可行。后来又尝试MySQL   官方提供的MySQL   Migration   Toolkit工具和SQLWays,发现

 

Migration   Toolkit中只要是含中文的信息都不能被移植,而SQLWays虽然可以移植中文,但是由于功能限制,所有

 

表中的字段都只能有7个字母,这样并不能满足要求。经过自己的努力,终于将数据库移植成功。 

 

具体的方法如下 

    1.首先用MySQL   Migration   Toolkit进行数据库的移植,这里只移植表

 

的结构。只要选择了原数据库(MSSQL)和目标数据库(MySQL)然后根据提示进行

 

选择和点击next就可以了。值得注意的是在编码处要选择自定义的gb2312编码,

 

如图所示: 

  http://lizhilin.myrice.com/project/t1.jpg 

  http://lizhilin.myrice.com/project/t2.jpg 

 

    2.通过SQLWays移植表中的数据.大体步骤也是选择原数据库和目标数据库后

 

一路next就可以了。当读取完MSSQL中的信息后,再选择import就可以进行导入

 

了。由于MySQL数据库中已经存在了对应的表,所以SQLWays会在移植过程中提示

 

创建表和字段失败,不过数据还是会被移植的,这样就绕开了7字节限制,也正

 

是我想要的结果。需要注意的是,SQLWays需要对数据源进行配置,所以还需要

 

MySQL的ODBC包,并且在数据源中配置MSSQL和MySQL即可。 

 

    3.还有一点需要注意,由于两个数据库之间表的命名方式不同,所以在

 

Migration   Toolkit完成结构的一之后MySQL中的数据库会被命名为

 

mytable.dbo(MSSQL中为mytable),如果想要命名为mytable,还需要进行一部操

 

作:新建一个数据库命名为mytable,然后将mytable.dbo的结构拷贝到mytable

 

中,然后删除mytable.dbo就可以了,这一步可以通过第三方GUI完成,比如EMS  

 

 SQL   Manager   for   MySQL等。 

 

    至此,两个数据库就完成了移植,希望本文对那些有相同需求的朋友有所帮

 

助。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值