2014-01-07 70 views
3

我在的情況下我與繼承的SQL Server 2008 R2的數據庫進行任何形式的可用文檔的SSIS包。數據庫「很可能」從SSIS包中獲取數據加載&我試圖追捕這個包。獲取通過加載數據到數據庫表

是否有T-SQL命令,我可以對數據庫運行然後會告訴我的數據庫加載數據的最後時間,而且其中的數據是從?

回答

2

恭喜。那麼,不是真的,而是歡迎你來學習大量新事物的新機會。我記得上ServerFault類似的問題 - 10 servers to administer and I'm a history major

  1. sp_blitz如果你一無所知採取一個SQL Server的照顧,從這裏開始。它們提供了一個可以在服務器上運行的便捷腳本,以及關於該腳本結果的培訓和建議。他們也很樂意提供一些很好的諮詢服務。 StackExchange網絡使用Brent Ozar Unlimited,請牢記這一點。無論如何,該存儲過程會告訴你在繼承服務器之後需要知道的大部分內容(備份最後一次運行時,是否有任何觸發器,這個東西有多少愚蠢)

  2. 打開啓動SQL Server Management Studio,連接到實例並查看SQL代理。加倍你在那裏看到的每項工作,並查看所有工作步驟。這將爲您提供一個機會,看看計劃以什麼間隔運行。您還需要看看Windows計劃(控制面板\所有控制面板項\管理工具\任務計劃程序)%windir%\system32\taskschd.msc /s對於SQL代理,你會想保留任何眼睛了類型爲「SQL Server集成服務」的工作子系統。您還應該注意任何操作系統命令,因爲您也可能會看到對dtexec.exe的引用。這是使SSIS包「運行」的可執行文件。如果任務調度程序,那麼你會尋找dtexec調用(並希望它不包裹在像ImportData.bat這樣的模糊的.bat文件中)。同時詢問你的組織是否使用不同的調度工具。幾次工作之前,我們使用潮汐效果很好。無論如何,這是你可以確定週期性執行的地方。

  3. 找到包。包將在數據庫或文件系統中。數據庫更容易,因爲它們將存儲在2008,2008 R2和2012包裝部署模型項目的msdb.dbo.sysssispackages中。對於2005年,查看msdb.dbo.sysdtspackages90。我有一個方便的查詢來在SSIS Package Query上提取這些信息。如果它在文件系統上,那麼你可以在本地盒子上祈禱它,搜索以.dtsx結尾的所有文件將會幫助你。但是,由於您可以引用網絡文件共享上的軟件包,因此可能會變得非常快。一旦找到它們,您將需要Business Intelligence Designer Studio BIDS,它是Visual Studio的自定義外殼。由於這是SQL Server 2008(和R2),因此必須運行Visual Studio 2008外殼程序。在2012年發佈SQL Server之前,該團隊被綁定到相應的VS安裝。找到SQL Server安裝介質並從那裏執行安裝。

要重點解決「有沒有T-SQL命令,我可以對數據庫運行,那麼它會告訴我的數據庫加載數據和地方數據是從最後一次?」不,它真的很簡單。如果您擁有優秀的設計師,您的表格可能會有插入和修改日期,以反映何時發生操作。

還有什麼可將數據傳輸到你的系統?一切。可能有.NET服務,無論是Web還是Windows推送數據。可能會觸發基於WMI的事件,如等待最新數據文件被丟棄的文件觀察器。等等

+0

爲了引用您「然而,由於您可以參考網絡文件共享上的軟件包,因此可能會變得很難看」。在當前情況下如此,但sp_blitz現在也非常有用 – StackTrace

+0

明白了,它正好在服務器A上的數據庫備份正在生產到服務器B上的文件共享。然後,服務器C有一個恢復數據庫作業,覆蓋通過還原服務器B上的備份文件來實現臨時數據庫。然後每週都有一項工作,用來自服務器C的導入來更新開發數據庫。在所有這些循環中,我只能訪問開發數據庫。 – StackTrace