2009-12-10 111 views
0

我正在使用SQL 2000,我需要確定哪些數據庫實際上正在使用。數據庫上次更新?

有沒有一個SQL腳本我可以用來告訴我上次數據庫更新?讀?等等?

我用Google搜索了一下,但空了。

+0

停止EM,看看是否有人抱怨 – mcintyre321 2009-12-10 17:00:43

+0

@ mcintyre321:嗯。我想知道這輛車在地板上的踏板是什麼。讓我斷開它只是爲了找出是否有人實際上在跺腳。 – 2009-12-10 17:02:39

+1

我只能爲我想知道的那些數據庫運行配置文件跟蹤,不是嗎? – DavidStein 2009-12-10 17:13:02

回答

0

您可以使用事務日誌讀取器來檢查數據庫中的數據上次修改時間。

對於SQL 2000,我不知道如何知道數據何時被讀取。

你可以做的是把一個觸發上登錄到數據庫和跟蹤時登錄成功,並跟蹤相關變量,找出誰/什麼應用程序正在使用DB。

2

編輯:找到以下的目標問題,事實上的後,最後訪問日期。關於如何確定誰在使用哪些數據庫,可以使用SQL Profiler中的正確過濾器進行明確監控。但是要注意,當過濾器不合適時,輪廓儀的痕跡會變得很大(因此分析速度很慢/難以分析)。

更改到數據庫架構,即表,列,觸發器和其它這樣的物體通常除了葉「日期」在系統表中的軌道/次(可以提供更詳細的有關如果需要的話)。

然而,除非本身包括各種各樣的時間戳的數據,通常有知道當數據被更改,除非恢復模型涉及保持所有這些改變的日誌很少有安全可靠的方式。在這種情況下,你需要一些工具來「編譯」的日誌數據...

至於檢測「改爲」活動......一個艱難的一個。可能有一些計算機取證樣的招數,但是也沒有簡單的解決辦法恐怕(超出能力在服務器活動都還在活動連接的最後查詢看到,顯然是一個非常短暫的事情;-))

0

如果您的數據庫已完全記錄,請創建新的事務日誌備份並檢查其大小。自上次事務日誌備份以來,數據庫沒有發生任何更改,日誌備份將具有固定的小長度,並且在發生更改時會更大。

這不是一個非常精確的方法,但它可以很容易地檢查,併爲您可能會奏效。

1

我通常運行探查器,如果我懷疑數據庫實際使用。如果沒有活動,則只需將其設置爲只讀或脫機。