首頁  >  文章  >  資料庫  >  MySQL資料庫資料遷移到SQLserver

MySQL資料庫資料遷移到SQLserver

黄舟
黄舟原創
2017-02-13 10:47:381559瀏覽


最近因工作需要,需要將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,如下截圖:


MySQL資料庫資料遷移到SQLserver

以下設定連線參數,指定資料來源名稱,IP位址及連接埠號,如下圖:

MySQL資料庫資料遷移到SQLserver

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-

本次安裝的檔案為:mysql- connector-odbc-5.2.7-winx64.msi 安裝過程略

2、配置ODBC驅動

對於mysql的訪問,我們需要配置ODBC驅動,來使得SQLserver能夠識別。
 開啟控制台,管理工具,資料來源(ODBC),選擇System DSN選項卡,點選新增,選擇MySQL ODBC 5.2 Unicode

 Driver,如下截圖:MySQL資料庫資料遷移到SQLserver

以下配置連接參數,指定資料來源名稱,IP位址及連接埠號碼,如下圖:MySQL資料庫資料遷移到SQLserver

新增完畢後按確定()。

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中文網(. .cn)! 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn