[轉][SQL] SSIS 簡單應用 數據庫匯入導出設定& SQL Agent按期排程

前言
本篇不是要說高深的SSIS 技巧,而是用實例的方式,說明如何應用 Visual Studio 的「Business Intelligence Projects」來創建「Integration Service Project」,並且加入(deployment)到SQL中,最後再以 SQL Agent 來排程作按期執行的工做。

若是環境是隻有安裝 SQL2008 或是先安裝了SQL ,會發現怎麼系統上也安裝了 Visual Studio 呢?沒錯~當安裝了 SQL 之後,會連帶的安裝 Business Intelligence (BI) 的開發環境。

1、SSIS介紹
Microsoft SQL Server Integration Services (SSIS) 是一個平臺,用於創建高效能資料整合方案,包括資料倉儲的擷取、轉換和載入 (ETL) 封裝。

Integration Services 包含用於創建及偵錯封裝的圖形工具和精靈;用於執行工做流程功能 (例如 FTP 做業)、執行 SQL 陳述式或傳送電子郵件訊息的工做;用於擷取及載入資料的資料來源和目的地;用於清除、彙總、合併和複製資料的轉換;用於管理 Integration Services 的管理服務,即 Integration Services 服務;以及用於程式設計 Integration Services 物件模型的應用程式發展介面 (API)。

Integration Services 取代 Data Transformation Services (DTS),後者最初是當作 SQL Server 7.0 元件導入的。工具

 

2、設定說明
要完成 SSIS 的簡單應用,須要下列的步驟
1.創建新的Project
2.創建Package
3.說明怎麼將此 Package 安裝到 SQL 裡,甚至是其餘臺機器
4.說明怎麼利用 SQL Agent 來排定工做

1. 創建新的Project
1.1開啟 Visual Studio ,並「New Project」


1.2專案類型 Project Type 選「Business Intelligence Projects」,樣版Templates 選「Integration Service Project」


1.3預設開啟版面的樣式


1.4這個名稱最後會出現在 SSIS 的 Stored Package 裡的 Package 名稱,先把Package .dtsx刪除


1.5右鍵點選SSIS封裝,裡的SSIS匯入和匯出精靈


1.5.1第一個出現的是資料來源,伺服器名稱輸入資料來源的IP,驗證請都使用SQL Server驗證,資料庫請選本身要匯入匯出的資料庫名稱


1.5.2第二個出現的就是資料目的地,伺服器名稱輸入資料目的地的IP,驗證請都使用SQL Server驗證,資料庫請選本身要匯入匯出的資料庫名稱


1.5.3選重一或多個資料表或檢視表複製資料


1.5.4選擇自行要匯入的資料表,後選擇下方編輯對應


1.5.5把先卸除再從新創建新目的地資料表。(此作法是為了防止如有要用SQL Server Agent作按期資料匯入到目的地資料庫時會產生重覆的資料)


1.5.6如有看到此畫面 可直接下一步 這是用來提醒的


1.5.7此畫面是告知作了什麼動做


1.5.8 接下來會須要一點時間,讓系統跑一下。請耐心等待,只要不要出現錯誤就能夠了 完成後關閉


1.6在Visual Studio上會看到此畫面


1.7這個名稱最後會出現在 SSIS 的 Stored Package 裡的 Package 名稱,建議改爲符合功能的名稱


1.7.1跟你確定是否是要改 Package Object 的名稱


1.8若要確定是否有誤可點選上方的偵錯測試看看 是否有問題 若是沒問題就完成SSIS的設定了

到這邊為止,以上是在說明如何創建SSIS的Package

2. 創建Package
2.1首先,點選 Project 按滑鼠右鍵,選擇屬性(property)


2.1.1然後把屬性「Deployment Utility」的「CreateDeploymentUtility」設定為 True。


2.2到 SSIS 選單選「Package Configurations」去設定 Package 的參數


咦?怎麼個人畫面是向下圖而非上圖那樣有「Package Configurations」能夠選呢?別擔心,只要把滑鼠點回 Data Flow tag 就會出現了,在 Solution Explorer 點 Project 是看不到選項的。


2.3開啟選項後,就「Enable package Configurations」然後「Add…」新增


2.3.1 Configuration type:這邊選 XML 格式


2.3.2 這邊的設定很重要,因為創建好的 Package 可能會運用在許多地方,不單單是本機的SQL Server,因此須要把一些參數設成能夠依不一樣 Server 作調整。

因此左邊框就是讓你勾選,當將此 Package 安裝在 SQL 裡,哪些項目還能作更改


2.3.3 完成後,就可按下 Finish


2.3.4回到這一頁按下 Close 結束吧


2.4 Package 設定檔都設定好之後,就是要將他創建起來(創建安裝檔),選擇 Build 選單來建置。


2.5接著在專案的目錄下\ bin \ Deployment\ 會有相關的檔案


3. 說明怎麼將此 Package 安裝到 SQL 裡,甚至是其餘臺機器
3.1只須要執行上圖中「安裝檔」那個檔案,就會開始安裝


3.2 Package 能夠以檔案形式,也能夠直接 deployment 到 SQL,這個例子我選用檔案方式。


3.3設定檔案存放的位置 (特別再說明一次,因為我前半段跟後半段在不一樣電腦執行,又忘記取相同的專案名稱,因此下圖中的專案目錄是 ISP1 ,若是您是跟著我前半段使用 SSIS_01 那麼這邊的目錄就會是 SSIS_01。


3.4剛剛保留能夠更改的變數,在此安裝步驟就能夠依每臺 Server 不一樣的環境,設定不一樣的值。


3.5安裝之後,你要用 Object Explorer 的「Integration Service」去連結他


3.6安裝好的 Package 會出現在 \Stored Package\File System\Project Name。


3.7在這個 Package 裡有一些項目還能夠再修改(例如輸出的檔案名稱)


3.8執行就會出現下圖的執行結果

沒有錯誤訊息出現 就OK了
若是你沒打算將此 Package 放入排程來按期處理,上述的步驟就完成了。

4. 說明怎麼利用 SQL Agent 來排定工做
接下來的設定請在SQL Server上設定


4.2設定新工做的名稱


4.3創建工做內容(Steps),Type 要選「SQL Server Integrated Service Package」 來呼叫剛剛創建的 Package。


4.4在 General 頁籤中 Package Source 選「File System」(因為我是用檔案的方式)


4.5檔案會放在 ~SQL\100\DTS\Package\專案


4.6然後到左邊「進階 Advanced」去設定當此工做完成後,該怎麼辦~當然就是給他結束囉,除非你還有下一個 Step


4.7接著在 Schedule 設定執行的時間


4.8能夠在 SQL Agent 的 Job 中查看,剛剛創建的新JOB是否產生了

最後只需在排程預定的執行時間後,觀察執行的狀況,若是正常 SQL Agent 就會繼續執行
PS.若是在執上有錯誤請查看錯誤訊息看是否為權限問題


若是是請到SQL Server Configuration Managerg 上調整SQL Server Angent 的使用權限或到services.msc 上一樣找到SQL Server Angent 來調整
SQL Server Configuration Managerg


services.msc
使用 SSIS 真的還蠻容易在設定時出錯的,若是參數設定不完善,也會導致執行時錯誤
相關文章
相關標籤/搜索