MySQL到MsSQL的迁移工具——SSMA
SQL Server迁移助手(SSMA)团队开发了针对MySQL的迁移助手Microsoft SQL Server Migration Assistant 2008 for MySQL。微软同时发布了其他三个迁移助手: SSMA for Access, SSMA for Oracle, and SSMA for Sybase (all v4.2) 。它也可以将一个MySQL数据库迁移到 SQL Azure的云上。
01.安装
在安装SSMA之前,一定要先安装mysql和mssql的ODBC,当然也可以直接安装两者的客户端,安装客户端时,就会自动安装ODBC.
如果你安装之前没有安装ODBC,它会提醒你下载安装;如果你安装了ODBC,打开SSMA还报错"缺少ODBC",可能是因为操作系统是64位,你打开了32位的应用程序,需要打开64位的。

02.连接
连接非常简单,连接mysql和mssql,连接设置就简单了,连接好后,可以看到已有的数据库。

03.使用
这个界面很简单,工具栏的一排按钮就是要使用的功能:新建方案-连接mysql-连接mssql-创建报告-转换结构-(同步数据库)-复制数据。

创建报告:它是作用是检查数据库,包括数据库的结构和数据,并生成报告,如果有问题将会有错误提示或警告。下图右键菜单也是常用的功能。

这是创建的报告。

转换结构:如果没有什么大的问题,就可以点击转换结构(Ctrl+R),转换的日志将出现在输入窗口,转换的结果在SSMA的SQL窗口(现在转换的结果数据库还没有到Mssql中)

同步数据库:在SSMA的SQL窗口新生成的数据库上右键,即有同步数据库。
复制数据:接下来,在myssql数据库上右键即可复制数据,这个过程需要再次输入mysql数据库密码。下面复制数据后的报告。

检查结果:不光要看转换结果的报告,更要去抽查数据,对数据进行检查。
04.问题
下面是一些常见的问题:
(1)数据类型对应问题。两个数据库不兼容,在转换过程中,我们最关心的肯定是数据对应关系,你可以在方案中进行设置.在实际操作中,我遇到的就是longtext转为了nvarchar(max)类型,遇到数据量大的(一个字段就有70万个长度),也可以存储下来。


(2)不知道是哪一步设置的问题,每个表中会出现一个SSMA的标识字段,如果有必要,删除它即可。

05.小结
总体来说,这个数据库迁移工具还是挺好用的,可用于实际生产。
MySQL到MsSQL的迁移工具——SSMA的更多相关文章
- MySQL和MsSQL实时自动同步---SyncNavigator 数据库同步软件
需要MySQL数据库支持的狐友们有福了,MySQL和MsSQL实时自动同步---SyncNavigator 数据库同步软件 使用SyncNavigator轻松实现数据库异地同步.断点续传.异构同步 ...
- MYSQL与MSSQL对比学习
最近在将公司的一个产品里面相关的MSSQL语句修改为可以在MYSQL上执行的语句 l 优点分析: MYSQL短小精悍,容易上手,操作简单,免费供用的.相对其它数据库有特色又实用的语法多一些.SQL怎 ...
- MySQL和MSSQL差异(增量)备份的原理
MySQL和MSSQL差异(增量)备份的原理 对于真正的增量备份来说,只需要记录当前每页最后的检查点的LSN,如果大于之前全备时的LSN,则备份该页面,否则不用备份 这大大加快了备份速度和恢复时间,同 ...
- SQL监控:mysql及mssql数据库SQL执行过程监控审计
转载 Seay_法师 最近生活有很大的一个变动,所以博客也搁置了很长一段时间没写,好像写博客已经成了习惯,搁置一段时间就有那么点危机感,心里总觉得不自在.所以从今天起还是要继续拾起墨笔(键盘),继续好 ...
- MySQL与MSSQL的一些语法差异(持续更新中)
分号不能少:分号不能少:分号不能少:重要的事情说3遍 Insert或者Update的数据包含反斜杠\的时候需要进行转义\\,例:insert into tablename(id,name) value ...
- Mysql 导入 MSSQL
.安装mysql数据库的ODBC驱动,mysql-connector-odbc--win32.msi .打开控制面板\管理工具\数据源ODBC,在用户DSN中添加一个MySQL ODBC .51数据源 ...
- MYSQL转MSSQL
SSMA 2008 for MySQL 1.0.exe SSMA 2008 for MySQL 1.0 Extension Pack.exe mysql-connector-odbc-5.1.11-w ...
- 基础 ADO.NET 访问MYSQL 与 MSSQL 数据库例子
虽然实际开发时都是用 Entity 了,但是基础还是要掌握和复习的 ^^ //set connection string, server,database,username,password MySq ...
- .net core +codefirst(.net core 基础入门,适合这方面的小白阅读,本文使用mysql或mssql)
设置为model所在的那一层 前言 .net core mvc和 .net mvc开发很相似,比如 视图-模型-控制器结构.所以.net mvc开发员很容易入手.net core mvc .但是两个又 ...
随机推荐
- python 字符串复制
通过变量来进行赋值 fstr = 'strcpy'sstr = fstrfstr = 'strcpy2'print sstr
- python 字符串相加
我们通过操作符号+来进行字符串的相加,不过建议还是用其他的方式来进行字符串的拼接,这样效率高点. 原因:在循环连接字符串的时候,他每次连接一次,就要重新开辟空间,然后把字符串连接起来,再放入新的空间, ...
- IoC控制反转与DI依赖注入
IoC控制反转与DI依赖注入 IoC: Inversion of Control IoC是一种模式.目的是达到程序的复用.下面的两篇论文是对IoC的权威解释: InversionOfControl h ...
- Application MyTest has not been registered. This is either due to a require() error during initialization or failure to call AppRegistry.registerComponent.
运行react-native项目时报错. 说明一下:项目本来是好的,再次运行就报错了 解决解决办法倒是有,不过具体什么原因不知道.希望有知道具体原因的童鞋能够补充一下 第一种情况:真的是注册的时候写错 ...
- Qt lcdNumber 不能显示完整时间
利用lcdNumber编了一个电子时钟,发现只显示“分”和“秒”,“时”没有显示出来.作为小白一名,谷歌了一下别人的程序才知道,原因是没有设置lcdNumber可以显示的位数,默认应该是显示4位的,所 ...
- Session丢失的解决办法小结
最近在做ASP.NET项目时,测试网站老是取不出Session中的值,在网上搜索了一下,找到一些解决方法,记录在这里.最后使用存储在StateServer中的办法解决了问题. SessionState ...
- get新技能: 如何设置元素高度与宽度成特定比例。宽度改变,高度自动按比例改变。 例如设置宽高比16:9。
设置宽高比在很多时候是有用的. 下面的栗子,我们设置一个容器的宽高比为16:9 //HTML代码片段 <div class="container"> <div c ...
- LeetCode——Gas Station
There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You ...
- android高级---->AsyncTask的源码分析
在Android中实现异步任务机制有两种方式,Handler和AsyncTask,它在子线程更新UI的例子可以参见我的博客(android基础---->子线程更新UI).今天我们通过一个小的案例 ...
- 在Asp.Net MVC中使用ModelBinding构造Array、List、Collection以及Dictionary
在asp.net mvc中,我们可以在html表单中使用特定的格式传递参数,从而通过model binder构造一些集合类型. 第一种方式 public ActionResult Infancy(Pe ...