SSMA迁移本地的MY SQL到本地SQL server及windows azure SQL Databaase
说到数据库,很多人都会想到MY Sql、SQL Server及oracle等等,同时很都人首选MY SQL,因为MY SQL是免费的,而且数据包也比较小,安装快捷方便,而SQL Server是收费的,是微软的产品,收费相当高,一般很少用,除非大数据,当然在资金满足的情况下会选择oracle数据库了,这些我就不具体说了,今天呢,我们主要介绍一下如何将本地的MY SQL数据迁移到SQL Serrver下,不管什么服务,迁移数据是最痛苦的事了,那有没有一种比较智能的方法做迁移呢,答案那是必须的,那是什么 呢?那就是微软提供了一个工具SSMA,
SSMA(SQL Seerrver Migration Assistant)的软件服务器提供将本地的MY SQL迁移到SQL Server及windows azure SQL Servrer Dabase,具体操作见下:
首先是下载该软件:
http://www.microsoft.com/en-us/search/result.aspx?q=microsoft sql server migration assistant 2008 for mysql
下载后开始安装
提示本地没有找到MY SQL ODBC的驱动,可以单击下载
http://dev.mysql.com/downloads/connector/
http://dev.mysql.com/downloads/connector/odbc/
下载后我们安装即可
开始安装
安装完成
我们继续安装SSMA
开始安装SSMA
工具安装完成
安装后,桌面多一个Microsoft SQL Server Migration Assing
启用该程序
首先创建一个新的项目
启动程序后,单击左上角 新建项目图标
然后选择你要迁移到SQL Server还是SQL Azure中(我们选择SQL服务器)
创建完项目后,我们链接MY Sql,因为我们要将MY SQL迁移
MY SQL链接认证
连接到MySQL
点击左上角的连接到MySQL图标(你必须 确认已安装MySQL的ODBC连接器 ),这时你的MySQL数据库信息将以树视图显示
创建一个模式迁移报告
选择要迁移的数据库,然后用鼠标右键单击数据库名称,并选择创建报告:
.连接到SQL Server(或SQL Azure,这取决于你在第3步中选择)
点击“连接到SQL Server图标的左上角。您可以提供的凭据连接到SQL Server或SQL Azure。如果您在步骤4中选择的MySQL数据库的数据库具有相同的名称不存在,你会被询问是否要创建一个。
注意:如果你不想SSMA为您创建数据库时,您应该在连接对话框中指定你要迁移到的数据库。默认情况下,SSMA转换MySQL数据库DB1中的所有对象到SQL Server架构DB1.dbo的SQL Server数据库DB1之前,必须同步创建(见第8步)。这样做的最简单的方法是在建立连接到SQL Server数据库时,在SQL Server连接对话框中指定数据库名称。
因为我们要迁移到SQL Server,所以还需要链接SQL Server
MY SQL和SQL Server都链接成功
您现在应该可以看到SQL Server的SQL Server数据在SQL Server资源管理器中的树视图,选择您要迁移的模式。
7.转换模式(即表)在MySQL的元数据资源管理器中,右键单击要迁移的数据库,然后选择 " 转换模式 " :
在这一点上,你可能需要在转换的模式中作出一些改变,例如,我选择了link_updated列,它是一个可为空的列,因为此列MySQL设置了默认值,而0000-00-00 00:00:00,是一个特殊值,将被视为一个空值数据来迁移,当数据迁移的时候如果不做改变,这种变化可能会导致错误。
SQL Server数据库的同步
在SQL Server中选择要同步到的数据库,右键单击选择 与数据库同步
确认要同步的数据库,确认
同步完成
迁移数据
在MySQL元数据资源管理器中,右键单击要迁移的数据库,并选择迁移数据,输入MySQL和SQL Server数据库的连接凭据。
迁移前提示验证数据库认证
开始迁移数据
迁移成功
如果要迁移到windows azure SQL Database下 ,我们需要在第一步创建项目的是实话选择SQL Azure,在此不多介绍了额,因为SSMA软件目前对MY SQL到SQL Serrver的迁移不支持国内的windows azure在,只支持国际版本的wiindows azure。不是不支持,而是目前该软件如果选择迁移到windows azure的话,数据库连接只有国际域名(database.azure.cloud.net),没有国内的windows azure域名(database.azure.cloud.cn)。所以没有选项连接到国内的windows azure database