摘要:初步介紹SSIS封裝如何部署在SQL Server, 並進行封裝啟用與排程執行
之後可能要到客戶那邊上SSIS的課,也就把以前Alex幫公司寫的專案檔當作研究目標,作些學習記錄
封裝部署的方式
1. 使用SQL Server Management Studio 2005-適合單一封裝部署
分別可匯入至檔案系統與MSDB系統資料庫,檔案系統的封裝 存放在C:\Program Files\Microsoft SQL Server\90\DTS\Packages\ ,操作畫面如ㄒ
(SQL Server Management Studio2008-C:\Program Files\Microsoft SQL Server\100\DTS\Packages\)
將封裝存放於msdb系統資料庫,不用擔心找不到封裝檔在那邊,可直接備份msdb資料庫即有所有封裝檔
但若要將SSIS服務能在某個執行個體的msdb系統資料庫,並管理封裝,需修改預設路徑為C:\Program Files\Microsoft SQL Server\90\DTS\Binn\ MsDtsSrvr.ini.xml (2005)
在msdb資料庫會記錄匯入的封裝檔, folderid ='00000000-0000-0000-0000-000000000000' 為存放於msdb的封裝檔,有亂數的則代表以檔案系統存放
/*放置模擬目錄結構的管理資訊*/
select * from dbo.sysdtspackagefolders90
/*記錄封裝所在目錄的資訊(folderid)與實際存放封裝定義*/
select * from dbo.sysdtspackages90
2. 封裝安裝精靈-適合多個以上封裝部署
若多個封裝要同時部署於Integration Service中,可在BIDS設計的Integration Service的專案中,在「方案總管」視窗右鍵「屬性」設定「部署公用程式」將CreateDeplomentUtility = true ,會自動載入專案中所有的封裝與組態檔案,「建置」專案時,會將所有檔案置於專案目錄下的\bin\Deployment (路徑可在DeploymentOutputPath設定)
點選專案名稱>.SSISDeploymentManifest時,即可執行「封裝安裝精靈」會出現以下畫面,可選擇部署在檔案系統或是MSDB資料庫內. 比較奇怪的是在2005環境選擇SQL Server 部署於msdb系統資料庫時,仍要選擇安裝資料夾(如藍色箭頭所示)
完成精靈後,物件總管的MSDB目錄會出現匯入的封裝檔,但在C:\Program Files\Microsoft SQL Server\90\DTS\Packages\ 的路徑下會產生一個空的目錄(如資料夾SapDataTransfer_wei),而物件總管的FileSystem目錄下也有個空的資料夾SapDataTransfer_wei, 回頭再看安裝完成畫面,這個目錄為「相依性安裝目錄」,不懂為什麼會有這樣的目錄
執行封裝
點選欲要執行的封裝右鍵→「執行封裝」,確認執行後即有進度視窗出現,可知道此次執行封裝是否成功
若要排程執行封裝,可於Agent Service建立Job,新增作業時指定執行封裝檔,若有多個封裝有順序性執行,可新增不同作業,並指定時間即可
參考學習書籍: 悅知 SQL Server 2008 SSIS整合服務