91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

不同版本的SQL Server之間數據導出導入的方法及性能比較

admin
2017年4月5日 9:48 本文熱度 9784

工作中有段時間常常涉及到不同版本的數據庫間導出導入數據的問題,索性整理一下,并簡單比較下性能,有所遺漏的方法也歡迎討論、補充。

00.建立測試環境

01.使用SQL Server Import and Export Tool

02.使用Generate Scripts

03.使用BCP

04.使用SqlBulkCopy

05.使用Linked Server進行數據遷移

06.使用RedGate的SQL Data Compare

07.結果對比

可以先看下測試的結果

 

00.建立測試環境

建立一個測試的環境,一個數據源數據庫,版本為SQL Server 2008,一個目標數據庫,版本為SQL Server 2000。

實驗環境如下圖所示,源數據庫使用語句生成了100萬的測試數據。

 

建立測試表并生成100萬的測試數據

 01.使用SQL Server Import and Export Tool

使用SQL Server Import and Export Tool進行數據的導出,也可以在目標數據庫端使用Import進行導入,這部分套件也是SSIS的一部分。

在源數據庫上右鍵,選擇Task -> Export Data

分別填寫源數據庫和目標數據庫的連接信息。

 

 

選擇“copy data from one or more tables or views”

選擇需要導數據的表,并且可以編輯列的Mapping關系。

可以選擇立即執行或者存儲為SSIS的包,用于執行計劃等其他用途。

這里我們選擇立即執行。

注意導入的時候如果遇到如下的錯誤

Error 0xc02020f4: Data Flow Task: The column "Tel" cannot be processed because more than one code page (936 and 1252) are specified for it.
(SQL Server Import and Export Wizard)

是因為兩邊的數據庫的Collation設置不一樣造成的,需要設置同樣的Collation。

  • 用時約1分30秒

02.使用Generate Scripts生成腳本

在源數據庫上右鍵,選擇Task -> Geneate Scripts...

配置相關信息,注意選擇數據庫的版本并將Script Data設置成True。

這里需要注意,因為有100萬的數據,所以導出的SQL文件就有400多M,所以用SQL Server Management Studio是打不開的。

所以只能使用sqlcmd執行。

sqlcmd語句
  • 用時約28分鐘

 03.使用BCP進行導出導入

在嘗試了前面兩個效率低下的工具之后,我們終于開始嘗試下SQL Server中專門用于導數據的工具:BCP。

關于BCP的詳細用法可以參見MSDN的幫助文檔

我們先使用BCP導出數據。

-U和-P后面分別為數據庫的用戶名和密碼。

我們可以看到100萬的數據導出僅用了1.8秒。

現在我們再使用BCP進行導入。

執行后發現,導入數據使用了20.8秒,還是很快的。

  • 用時1.872秒+20.810秒=22.682秒

 04.使用SqlBulkCopy

.NET Framework 2.0中增加的SqlBulkCopy類可以進行高效的數據遷移動作,這也為代碼實現數據遷移提供了接口。

并且SqlBulkCopy類提供了修改字段Mapping關系的方法ColumnMappings

使用SqlBulkCopy類進行數據遷移

執行后

  • 用時14.8秒

05.使用Linked Server進行數據遷移

先在源數據庫上對目標數據庫建立Linked Server,或者反過來也行。

建立Linked Server

 

是用INSERT INTO...SELECT...進行導入

執行用時

  • 用時7.97分鐘

06.使用RedGate的SQL Data Compare進行數據遷移

第三方的工具,有數據庫結構比較的工具SQL Compare和數據比較工具SQL Data Compare。

執行

因為也是生成INSERT的SQL執行的,所以就不做過多比較了,上面已經測試過了。

07.結果對比

因為這里測試的環境有網絡和表結構的特殊情況,不能說明所有情況下效能的差異,但是也可作為參考之用。

下面給出比較結果。

 


該文章在 2017/4/5 9:56:38 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 亚洲无码特黄高清 | 国产高清乱伦自拍 | 国产精品秘A级导航 | 午夜福利久 | 日本国产精品二区 | 黑人中文字幕在线 | 国产不卡视频 | 成人h视频在线观看 | 91夜间福利 | 国产视频六区 | 精品亚洲欧美无人 | 乱仑图片| 国产亚洲视 | 欧洲亚洲日产 | 国产va免费精品 | 国产综合同事 | 女同另类啪 | 日本欧美综合观看 | 国产经品一区二区 | 国产A级片网站 | 国产精品综合亚洲 | 日本爽爽爽爽爽 | 国产亚洲玖玖玖 | 日本黄页网址在线 | 青草青在线 | 国产精品福利视 | 日本一区二区在 | 97无吗 | 日韩专区亚洲精品 | 中文字幕无线精品 | 欧美日韩一区二区三 | 日本国产网红亚洲 | 日本大片视频 | 福利导航在线视频 | 成人爱看片午夜福利 | 成人午夜免费观看 | 精品一区二区视频 | 岛国精品在线观看 | 国产婬妇視频网站 | 国产不卡一区 | 日韩精品国产精品 |