[转帖]SQL Server 迁移数据到MySQL_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1466 | 回复: 0   主题: [转帖]SQL Server 迁移数据到MySQL        下一篇 
xiaoyu8674
注册用户
等级:新兵
经验:72
发帖:1
精华:0
注册:2016-10-20
状态:离线
发送短消息息给xiaoyu8674 加好友    发送短消息息给xiaoyu8674 发消息
发表于: IP:您无权察看 2018-7-16 14:46:12 | [全部帖] [楼主帖] 楼主

摘要: 由于要在sqlserver 2000中导出一些报表还要对一些表进行一些特殊处理,好久没用过sqlserver 2000了,想着导入到mysql中更好操作些,所以需要把SQL Server的数据转移到MySQL;由于涉及的表比较多,所以想在MySQL中生成对应表并导入数据;

一、背景

由于要在sqlserver中导出一些报表还要对一些表进行一些特殊处理,好久没用功sqlserver了,想着导入到mysql中更好操作些,所以需要把SQL Server的数据转移到MySQL;由于涉及的表比较多,所以想在MySQL中生成对应表并导入数据;

上网找了些资料,如:将ACCESS和MSSQL导入MYSQL中、MySQL Migration 实现 MSSQL 到 MySQL数据迁移,虽然不知道里面的做法是否可以成功转移,但是里面的过程比较复杂,没有去尝试,后来自己找到了方法,最重要就是简单和准确(暂时没发现明显的BUG),这里分享给大家。

二、转移数据

我使用了MySQL的Client的工具SQLyog,这个工具的安装很简单。安装完成之后点击需要导入的目标数据库,点击右键【Import】->【Import Extenal Data】;

北京联动北方科技有限公司

(Figure1:Import)


选择【Start a new job】,点击【下一步】;
北京联动北方科技有限公司

 (Figure2:Start a new job)


下面就是DSN的设置界面,如果你的下来列表中没有需要导出SQL Server数据库的DSN,那么需要通过【Create a New DSN】来创建一个新的DSN连接到SQL Sever;
北京联动北方科技有限公司

 (Figure3:Create a New DSN)


北京联动北方科技有限公司

(Figure4:创建新数据源)
北京联动北方科技有限公司

(Figure5:选择数据源类型)

把上面的设置保存为一个local.dsn文件;
北京联动北方科技有限公司

(Figure6:选择数据源保存路径)
北京联动北方科技有限公司

(Figure7:选择SQL Server服务器)
北京联动北方科技有限公司

(Figure8:设置SQL Server帐号和密码)
北京联动北方科技有限公司

(Figure9:选择SQL Server数据库)
北京联动北方科技有限公司

(Figure10:测试数据源)
北京联动北方科技有限公司

(Figure11:测试成功)

选中【File DSN】,在浏览中选择我们刚刚创建好的DSN,接着填写登录到SQL Server的帐号和密码;
北京联动北方科技有限公司

(Figure12:选择DSN)

下一步,选择目标MySQL服务器,填写IP地址和帐号密码,并且需要选择目标数据库;
北京联动北方科技有限公司

(Figure13:设置MySQL帐号和密码目标数据库)

这一步类似SQL Server的导入导出功能,这里可以拷贝一个表或者使用SQL脚本过滤数据;
北京联动北方科技有限公司

(Figure14:表拷贝)

上面的全部过程就是为创建SQL Server与MySQL的一个管道,接下来就是最为重要的设置SQL Server表与MySQL表之间的对应关系了;里面包括了SQL Server表字段与MySQL表字段之间的对应关系【Map】,高级选项【Advanced】,过滤【WHERE】。
北京联动北方科技有限公司

(Figure15:选择表对应关系)

下图Figure16,数据源【Source】,描述【Destination】,特别注意这里数据类型【Type】,这里的意思是转换目标的数据类型,但是不需要跟目标表的一样,因为这里是做为一个临时存储的数据类型,类似FindOn在SQL Server中是datetime,这里转换为MySQL的timestamp,其实MySQL目标表的数据类型是datetime,这样的设置也是可以转换成功的。
北京联动北方科技有限公司

(Figure16:表字段转换)
北京联动北方科技有限公司

(Figure17:高级选项)

北京联动北方科技有限公司

 (Figure18:Error)


北京联动北方科技有限公司

(Figure19:Log)


北京联动北方科技有限公司

(Figure20:执行信息)
北京联动北方科技有限公司

(Figure21:执行结果)
北京联动北方科技有限公司

(Figure22:原始SQL Server的数据列表)
北京联动北方科技有限公司

(Figure23:转移到MySQL的数据列表)

对比下Figure20与Figure21,发现我们数据已经全部转移成功了;

工具下载地址

http://pan.baidu.com/disk/home#dir/path=%2Fapps%2Fsqlyog




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论