首页  >  文章  >  数据库  >  MySQL数据库数据迁移到SQLserver

MySQL数据库数据迁移到SQLserver

黄舟
黄舟原创
2017-02-13 10:47:381573浏览


最近因工作需要,需要将mysql数据库迁移到sqlserver,仅仅是数据迁移,因此相对比较简单。对于mysql迁移到sqlserver,我们需要使用到mysql odbc驱动,然后透过sqlserver链接服务器的方式来访问mysql。具体见下文描述。

一、 迁移环境

源:RHEL 6.5 + MySQL 5.6.26  
 目标: Windows 7 64 + SQLserver 2014

二、准备迁移环境

1、下载及安装ODBC驱动

http://www.php.cn/

本次安装下载的文件为:mysql-connector-odbc-5.2.7-winx64.msi 安装过程略

2、配置ODBC驱动

对于mysql的访问,我们需要配置ODBC驱动,来使得SQLserver能够识别。
 打开控制面板,管理工具,数据源(ODBC),选择System DSN选项卡,单击添加,选择MySQL ODBC 5.2 Unicode
 Driver,如下截图:


这里写图片描述

以下配置连接参数,指定数据源名称,IP地址及端口号,如下图:

这里写图片描述
添加完毕后单击确定(OK)。

3、添加链接服务器

使用下面的代码添加链接服务器,注意替换相应的字符。USE masterGOEXEC sp_addlinkedserver @server = 'MySQL', @srvproduct='MySQL', @provider = 'MSDASQL', 
@datasrc = 'MySQL_SRC'GOEXEC sp_addlinkedsrvlogin @rmtsrvname='MySQL',@useself='false',@locallogin='sa',@rmtuser='root',@rmtpassword='mysql'GO

4、测试链接服务器

SELECT * FROM OPENQUERY (MySQL ,'select * from testdb.tt)
id  dt1   2016-03-18 10:48:06.00000002   NULL3   NULL

二、 实施数据迁移

USE master
GO 
CREATE DATABASE material  --创建目标数据库GO可以使用以下语句查询需要迁移的schema下的表
SELECT * FROM OPENQUERY (MySQL ,'select * from information_schema.TABLES where table_schema=''material''' )

将所有表内容插入到SQLserver,如下方式SELECT * INTO material.dbo.ic_goods FROM OPENQUERY (MySQL ,'select * from material.ic_goods');

最近因工作需要,需要将mysql数据库迁移到sqlserver,仅仅是数据迁移,因此相对比较简单。对于mysql迁移到sqlserver,我们需要使用到mysql odbc驱动,然后透过sqlserver链接服务器的方式来访问mysql。具体见下文描述。

一、 迁移环境

源:RHEL 6.5 + MySQL 5.6.26  
 目标: Windows 7 64 + SQLserver 2014

二、准备迁移环境

1、下载及安装ODBC驱动

http://www.php.cn/

本次安装下载的文件为:mysql-connector-odbc-5.2.7-winx64.msi 安装过程略

2、配置ODBC驱动

对于mysql的访问,我们需要配置ODBC驱动,来使得SQLserver能够识别。
 打开控制面板,管理工具,数据源(ODBC),选择System DSN选项卡,单击添加,选择MySQL ODBC 5.2 Unicode
 Driver,如下截图:

这里写图片描述

以下配置连接参数,指定数据源名称,IP地址及端口号,如下图:

这里写图片描述
添加完毕后单击确定(OK)。

3、添加链接服务器

使用下面的代码添加链接服务器,注意替换相应的字符。
USE masterGOEXEC sp_addlinkedserver @server = 'MySQL', @srvproduct='MySQL', @provider = 'MSDASQL', @datasrc = 'MySQL_SRC'GOEXEC 
sp_addlinkedsrvlogin @rmtsrvname='MySQL',@useself='false',@locallogin='sa',@rmtuser='root',@rmtpassword='mysql'GO

4、测试链接服务器

SELECT * FROM OPENQUERY (MySQL ,'select * from testdb.tt)
id  dt1   2016-03-18 10:48:06.00000002   NULL3   NULL

二、 实施数据迁移

USE master
GO 
CREATE DATABASE material  --创建目标数据库GO可以使用以下语句查询需要迁移的schema下的表
SELECT * FROM OPENQUERY (MySQL ,'select * from information_schema.TABLES where table_schema=''material''' )

将所有表内容插入到SQLserver,如下方式
SELECT * INTO material.dbo.ic_goods FROM OPENQUERY (MySQL ,'select * from material.ic_goods');

以上就是MySQL,数据迁移,SQLserver的内容,更多相关内容请关注PHP中文网(www.php.cn)!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn