介紹 如果你已經開發完一個不錯的SSIS包並且能夠在你的本地完美的運行,每個任務都亮起綠色的通過標誌。這時為了能夠讓這個包處理能夠在指定時間運行,你需要將其發佈到一個伺服器上,並做好相關配置。作為開發人員可能我們不能直接在生產環境去做這個事情,這需要我們有一個開發或者測試環境來完成整個部署測試,因為 ...
介紹
如果你已經開發完一個不錯的SSIS包並且能夠在你的本地完美的運行,每個任務都亮起綠色的通過標誌。這時為了能夠讓這個包處理能夠在指定時間運行,你需要將其發佈到一個伺服器上,並做好相關配置。作為開發人員可能我們不能直接在生產環境去做這個事情,這需要我們有一個開發或者測試環境來完成整個部署測試,因為DBA有時候不會允許你去直接訪問生產環境。
本篇將介紹幾種從本地到伺服器的部署包的方法。SQLServer 2012中引入的項目部署模型不再重覆記述了,因為SSIS2012的報部署模型也是用來相似的方法這裡會有介紹。
轉載請標註出處:http://www.cnblogs.com/wenBlog/
目的
部署的包有以下幾種形式:
- 文件系統,包被存儲在你選擇的文件夾內。
- SSIS包存儲,包被保存到SSIS服務管理的一套文件系統表中,位於-%Program Files%\Microsoft SQL Server\100\DTS for SQL Server 2008文件夾下。
- MSDB 資料庫,包被存儲在dbo.sysssispackages 表中。
接下來我們看一下四種主要的部署方式:
- 傳統方式
- 手動方式
- 命令方式
- 實用方式
分別詳細描述一下各種方式.
傳統方式
使用內置的部署方法來發佈包到伺服器上:首先,SSISDeploymentManifest(SSIS項目),這是一個用來描述哪些包需要被部署到伺服器的基礎信息的XML。如果雙擊項目,一個嚮導將會協助你發佈包到伺服器。
按照以下步驟創建即可:
- 右擊項目選擇屬性。在配置屬性中,選擇部署(Deployment Utility)。設定CreateDeploymentUtility 屬性為True。能看到如下圖1所示。
-
右擊項目(project ),然後點擊生成(Build)。將會創建清單中的內容到配置的文件夾里然後將所有的包複製到文件夾中。
-
在部署文件中, 預設(.\bin\Deployment),然後雙擊ISDM文件進入部署嚮導。
-
按照部署嚮導來部署你的文件,
圖1
手動方式
對於能夠遠程式控制制伺服器的人來說(DBA…),可以手動做任何事情:比如手動部署包。
- 使用Management Studio 登陸SSIS服務瀏覽你打算部署的文件夾。
- 右鍵文件夾並選擇“導入包”。
- 在對話框中指定包的地址,然後點擊ok
對於喜歡在BIDS處理的人來說可以如下處理:
- 打開包。在菜單中,找到文件並且選擇另存為"Save Copy of [myPackage.dtsx] As" 如下圖2所示 。
- Hit OK. 在對話框中選擇目的位置,並且選擇包需要被部署的位置。點擊Ok
圖2
命令方式
如果你是那些十分熱愛命令行的家伙,那麼也可以直接使用命令行部署包。典型的CMD line 如下:
dtutil /FILE “C:\myPackages\myPackage.dtsx” /DestServer myServer /Copy SQL;myPackage
註意:目的包名稱中沒有.dtsx 擴展名。
使用方式
最後介紹一下我最為喜歡的部署包到伺服器的方式(使用BIDS Helper)。一個免費的插件。這個小小的插件引入了大量的功能到BIDS中,其中最為有價值的對於我們來說就是簡化部署功能。
- 首先你需要配置部署屬性,右擊項目然後選擇屬性(Properties)。在配置屬性中,選擇部署(Deploy --BIDS Helper),選擇你喜歡目標類型,然後配置路徑,如圖3所示。
- 現在你可以在解決方案瀏覽器中只是右擊包然後選擇“部署(Deploy)”來部署一個包了。
圖 3
最大的優勢就是無論多少個文件都能一次性部署:只需要右鍵你的項目,然後選擇部署。所有的包都會被部署。
總結
這篇隨筆簡單介紹了幾個不同的部署包到伺服器的方法,每一個都得到了相同的結果。因此你可以選擇一個最為讓自己感到舒適的方式來部署。也歡迎有新的方式加入(這裡沒有介紹TFS、SVN、github部署等)
references:https://msdn.microsoft.com/en-us/library/ms140117%28v=sql.105%29.aspx