部署SSIS包完成遠程數據傳輸

来源:https://www.cnblogs.com/grom/archive/2018/05/10/9018978.html
-Advertisement-
Play Games

本篇介紹如何使用SSIS和作業完成自動更新目標數據任務。 ** 溫馨提示:如需轉載本文,請註明內容出處。** 本文連接:http://www.cnblogs.com/grom/p/9018978.html 筆者需要定期從伺服器更新N家客戶的遠程伺服器數據,上一篇的存儲過程是其中一個更新方法,後來隨著 ...


本篇介紹如何使用SSIS和作業完成自動更新目標數據任務。 

 

** 溫馨提示:如需轉載本文,請註明內容出處。**

 

本文連接:http://www.cnblogs.com/grom/p/9018978.html

 

  筆者需要定期從伺服器更新N家客戶的遠程伺服器數據,上一篇的存儲過程是其中一個更新方法,後來隨著數據量逐漸增大,受網路環境的影響,批量遠程插入消耗的時間已經無法承受,後來在導出數據時發現了保存SSIS選項,然後展開了測試開發,現將成果分享出來供大家參考,類似的資料不少,所以就簡單寫寫操作步驟。

 

首先,儘量可能使用部署到環境的Windows賬號,比如部署到伺服器,就遠程到伺服器後使用Windows賬號登錄,可以避免很多許可權上的麻煩。

另外,註意客戶端的版本,SSMS一定不能低於SQL服務版本,不然會出異常。

 

微軟官網文檔https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008-r2/bb522535(v%3dsql.105)

 

導出導入數據,SSIS包部署在源庫還是目標庫均可,下麵以導出數據為例。

 

右鍵導出數據的庫 任務 導出數據

 

 

選擇導出資料庫(數據源庫)

 

 選擇目標庫

 

編輯要傳輸的表,有不同需求(如需要刪除目標表內原數據實現全覆蓋等)時,可在編輯映射里設置。

 

 批量設置或單表設置

 

最後保存SSIS包,為了保證可移植性,筆者這裡將保護級別設置成了密碼保護

SSIS包保存方式有兩種,一種是保存在SQL Server內部,另一種是保存成.dtsx的文件

保存在SQL Server里可以在系統資料庫msdb里的sysssispackages表內看到

或者保存成文件 雙擊執行後可開啟執行包的實用工具(前提是安裝了)

跟著嚮導走就可以執行包了,無論是包文件還是Sql Server內的均可使用此工具執行。

 

繼續導出

點擊完成後完成包的保存。

 

SSIS可視化界面

管理SSIS微軟提供了兩種可視化管理工具,SQL Server Data Tools (SSDT)和大家用的 SQL Server Management Studio(SSMS)

官方文檔:https://docs.microsoft.com/zh-cn/sql/integration-services/integration-services-ssis-development-and-management-tools?view=sql-server-2017

這裡只以SSMS界面舉例

點擊連接,選擇 Integration Services(這裡只能使用Windows身份連接,所以)

連接後可進行管理配置

 

 

 

 

為了可維護性,樓主在這裡新建了項目,如無此需求的可以跳過本步驟

在Integration Services目錄上右鍵創建目錄

創建此目錄時會自動在資料庫內創建同名庫,記錄相關信息,紅色圈內為資料庫名稱

密碼必須設置,並且要符合安全策略,預設的好像是字母+數字+特殊符號

 * 可能會出現以下錯誤

解決方案:https://blog.csdn.net/yy13210520/article/details/6438457 下麵附張解決方案截圖

  

創建完成如圖

創建文件夾

好了,一個解決方案建好了

下麵是導入包

 

保存為文件選第一個,保存在SQL Server選第三個,第二個筆者沒用過,推測是裝了SSDT後創建的,有經驗的大神希望可以留下教程

 

 

找不到包直接選擇SSIS包的根目錄文件夾(如圖所選)即可

 

 

 

把項目里需要的包都放進去,記得吧密碼輸進去

 

 

選擇項目的保存路徑

 

 

完成後會自動彈出項目部署嚮導,沒有的話可以右擊項目選擇部署項目

 

 

部署完成

 

 

 

設置作業自動執行包

新建作業,沒有SQL Server代理的可在SQL配置中開啟

 

新建步驟 類型選擇 SQL Server Integration Services 包

包源:保存文件的選擇文件系統,沒有建項目只保存在SQL Server上的選SQL Server,按上面步驟建立項目的選SSIS目錄

 

選擇每個包建立每個步驟,再設置好計劃

 

大功告成

 

 

 

關於SSISDB資料庫的表,筆者從網上查了下表的作用:

  • [internal].[executables] -- 記錄每個版本的包裡面的可執行任務
  • [internal].[operations] -- 該表記錄了SSIS包的操作記錄
  • [internal].[operation_permissions] --記錄的每個操作記錄的許可權
  • [internal].[operation_os_sys_info] --記錄每個操作的系統資源使用
  • [internal].[operation_messages] --記錄每個操作的運行時狀態,具體到包裡面的各個任務的執行情況
  • [internal].[executions] --記錄每個SSIS包的執行信息
  • [internal].[execution_parameter_values] --記錄執行時各個參數的值
  • [internal].[executable_statistics] -- 記錄每個包裡面可執行任務的執行狀態
  • [internal].[event_messages] -- 記錄每個可執行任務的消息代碼
  • [internal].[event_message_context] -- 記錄每個可執行消息的上下文屬性
  • [internal].[catalog_encryption_keys] -- 記錄創建SSISDB時使用的密碼和加密的Key值。

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在MySQL中,my.cnf是參數文件(Option Files),類似於ORACLE資料庫中的spfile、pfile參數文件,照理說,參數文件my.cnf中的都是系統參數(這種稱呼比較符合思維習慣),但是官方又稱呼其為系統變數(system variables),那麼到底這個叫系統參數或系統變數... ...
  • 1. 日期轉化為字元串 (以2016年10月20日為例) select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') strDateTime from dual; --獲取年-月-日 時:分:秒 --顯示結果為:2016-10-20 12:35:21 select ...
  • 本文由 網易雲 發佈。 作者:郭憶 本篇文章僅限內部分享,如需轉載,請聯繫網易獲取授權。 故障恢復 MySQL基於Check point的機制,周期性的建立redo log與數據頁的一致點。一旦資料庫重啟,從記錄的Check point開始,根據redo log,對相應的數據頁進行更新,對於已經提交 ...
  • 通過數據交換平臺上傳較大的文件時,經常會出現導入失敗情況,換種方式通過新數據開發平臺(stark)也可以輕鬆實現外部數據與hive的數據關聯。 --第一步、導入csv文件到hive --stark數據開發平臺——>資源管理——>搜索欄右邊+號——>上傳資源(資源類型:選擇普通文件) --第二步、建表 ...
  • 本文由 網易雲 發佈。 作者:範欣欣 本篇文章僅限內部分享,如需轉載,請聯繫網易獲取授權。 眾所周知,HBase預設適用於寫多讀少的應用,正是依賴於它相當出色的寫入性能:一個100台RS的集群可以輕鬆地支撐每天10T 的寫入量。當然,為了支持更高吞吐量的寫入,HBase還在不斷地進行優化和修正,這篇 ...
  • 本文由 網易雲 發佈。 作者:唐雕龍 本篇文章僅限內部分享,如需轉載,請聯繫網易獲取授權。 面向新手的hadoop+hive學習環境搭建,加對我走過的坑總結,避免大家踩坑。 對於hive相關docker,並沒有官方的docker,第三方維護經過測試各種不靠譜,所以才想到自己搭建一套,然後後期在整理成 ...
  • 1. Flink的引入 這幾年大數據的飛速發展,出現了很多熱門的開源社區,其中著名的有 Hadoop、Storm,以及後來的 Spark,他們都有著各自專註的應用場景。Spark 掀開了記憶體計算的先河,也以記憶體為賭註,贏得了記憶體計算的飛速發展。Spark 的火熱或多或少的掩蓋了其他分散式計算的系統身 ...
  • 在使用cx_Oracle模塊讀取Oracle資料庫中的中文記錄時,返回值皆為?,後google得此佳文,遂問題得以解決,特此記之。 Oracle資料庫版本是10g,字元集是AL32UTF8. 編寫的python腳本中需要加入如下幾句: 這樣可以保證select出來的中文顯示沒有問題。 要能夠正常的i ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...