最近因工作需要,需要將mysql數(shù)據(jù)庫遷移到sqlserver,僅僅是數(shù)據(jù)遷移,因此相對比較簡單。對于mysql遷移到sqlserver,我們需要使用到mysql odbc驅(qū)動,然后透過sqlserver鏈接服務(wù)器的方式來訪問mysql。具體見下文描述。
一、 遷移環(huán)境
源:RHEL 6.5 + MySQL 5.6.26 ?
?目標(biāo): Windows 7 64 + SQLserver 2014
二、準(zhǔn)備遷移環(huán)境
1、下載及安裝ODBC驅(qū)動
http://www.php.cn/
本次安裝下載的文件為:mysql-connector-odbc-5.2.7-winx64.msi 安裝過程略
2、配置ODBC驅(qū)動
對于mysql的訪問,我們需要配置ODBC驅(qū)動,來使得SQLserver能夠識別。
?打開控制面板,管理工具,數(shù)據(jù)源(ODBC),選擇System DSN選項(xiàng)卡,單擊添加,選擇MySQL ODBC 5.2 Unicode
?Driver,如下截圖:
以下配置連接參數(shù),指定數(shù)據(jù)源名稱,IP地址及端口號,如下圖:
添加完畢后單擊確定(OK)。
3、添加鏈接服務(wù)器
使用下面的代碼添加鏈接服務(wù)器,注意替換相應(yīng)的字符。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、測試鏈接服務(wù)器
SELECT?*?FROM?OPENQUERY?(MySQL?,'select?*?from?testdb.tt) id??dt1???2016-03-18?10:48:06.00000002???NULL3???NULL
二、 實(shí)施數(shù)據(jù)遷移
USE?master GO? CREATE?DATABASE?material??--創(chuàng)建目標(biāo)數(shù)據(jù)庫GO可以使用以下語句查詢需要遷移的schema下的表 SELECT?*?FROM?OPENQUERY?(MySQL?,'select?*?from?information_schema.TABLES?where?table_schema=''material'''?) 將所有表內(nèi)容插入到SQLserver,如下方式SELECT?*?INTO?material.dbo.ic_goods?FROM?OPENQUERY?(MySQL?,'select?*?from?material.ic_goods');
最近因工作需要,需要將mysql數(shù)據(jù)庫遷移到sqlserver,僅僅是數(shù)據(jù)遷移,因此相對比較簡單。對于mysql遷移到sqlserver,我們需要使用到mysql odbc驅(qū)動,然后透過sqlserver鏈接服務(wù)器的方式來訪問mysql。具體見下文描述。
一、 遷移環(huán)境
源:RHEL 6.5 + MySQL 5.6.26 ?
?目標(biāo): Windows 7 64 + SQLserver 2014
二、準(zhǔn)備遷移環(huán)境
1、下載及安裝ODBC驅(qū)動
http://www.php.cn/
本次安裝下載的文件為:mysql-connector-odbc-5.2.7-winx64.msi 安裝過程略
2、配置ODBC驅(qū)動
對于mysql的訪問,我們需要配置ODBC驅(qū)動,來使得SQLserver能夠識別。
?打開控制面板,管理工具,數(shù)據(jù)源(ODBC),選擇System DSN選項(xiàng)卡,單擊添加,選擇MySQL ODBC 5.2 Unicode
?Driver,如下截圖:
以下配置連接參數(shù),指定數(shù)據(jù)源名稱,IP地址及端口號,如下圖:
添加完畢后單擊確定(OK)。
3、添加鏈接服務(wù)器
使用下面的代碼添加鏈接服務(wù)器,注意替換相應(yīng)的字符。 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、測試鏈接服務(wù)器
SELECT?*?FROM?OPENQUERY?(MySQL?,'select?*?from?testdb.tt) id??dt1???2016-03-18?10:48:06.00000002???NULL3???NULL
二、 實(shí)施數(shù)據(jù)遷移
USE?master GO? CREATE?DATABASE?material??--創(chuàng)建目標(biāo)數(shù)據(jù)庫GO可以使用以下語句查詢需要遷移的schema下的表 SELECT?*?FROM?OPENQUERY?(MySQL?,'select?*?from?information_schema.TABLES?where?table_schema=''material'''?) 將所有表內(nèi)容插入到SQLserver,如下方式 SELECT?*?INTO?material.dbo.ic_goods?FROM?OPENQUERY?(MySQL?,'select?*?from?material.ic_goods');
以上就是MySQL,數(shù)據(jù)遷移,SQLserver的內(nèi)容,更多相關(guān)內(nèi)容請關(guān)注PHP中文網(wǎng)(www.php.cn)!