2010-12-06 20 views
-1

MS SQL Server 2008 Standard,ShadowProtect Server Edition 4.0.0.5885 - 上週五,我們的客戶發現數據庫中缺少記錄。我發現週四晚上的SQL備份包含了所有缺失的記錄。出於多種原因排除用戶錯誤。是什麼導致SQL Server記錄消失?

  • 所有缺失的記錄下降了8天的範圍內
  • 日期範圍開始22天週五之前和星期五結束前14天
  • 所有添加和8天的範圍內所做的所有更改丟失從14個獨立的表
  • 所有缺失的記錄存在於星期四晚上11點備份
  • 應用程序日誌顯示沒有異常事件,據我所知。

我在MS SQL Server事件查看器的應用程序列表中找不到任何異常。 我們正在運行ShadowProtect Server,以便每小時對2臺服務器驅動器進行映像備份。 4個月前發生過同樣的事件。

ShadowProtect每小時運行一次數據庫備份。

一個理論是ShadowProtect Server 4磁盤鏡像軟件每小時運行一次差異備份,它在星期五上午9點備份期間以某種方式導致數據丟失。我不知道有任何其他活動。除了正常的用戶訪問之外,星期四晚上11點正常的數據庫備份和星期五發現的缺失記錄之間。

謝謝你的幫助。如你所想,客戶非常關心。

+0

需要說明的是,在該期間創建/更新的所有記錄都不存在,這是因爲所有缺失的記錄是在該窗口期間創建或更新的?您在該窗口中創建/更新了一些*數據? – Tim 2010-12-06 22:06:41

+1

什麼消除了用戶錯誤或用戶操作? – Tim 2010-12-06 22:08:09

回答

0

我們從來沒有找到丟失記錄的原因。我們在另一個MS SQL Server實例中重新安裝數據庫,將數據庫升級到新版本,並將數據從舊數據庫遷移到新數據庫。這似乎解決了這個問題。

0

如果您想知道什麼是刪除記錄或何時被刪除,數據庫應該設置審計表,其中包括用戶名和更改日期。然後,您可以查看審覈日誌,查看何時刪除了銷售線索,以及由誰或何種流程。所有包含業務關鍵信息的數據庫都應該進行審計。不幸的是,這次事件發生後,通過審計發現誰做了這個事情還爲時過晚。您可能能夠找到某個第三方產品查看事務日誌,並且至少可以找出刪除發生的時間,如果不是誰。您還應該每15分鐘左右進行一次事務日誌備份。

我並不熟悉ShadowProtect服務器,但缺少的數據聽起來就像運行腳本(並啓用了cacade刪除),似乎不太可能是ShadowProtect服務器。如果它干擾,我會期待一個更隨機的變化,一個可以很容易地通過SQL查詢來完成的變化。你允許直接訪問你的桌子嗎?您可能會有人試圖損害數據或隱藏欺詐活動。對數據的威脅並不總是來自事件日誌中的外部來源或應用程序。誰有權刪除生產數據庫中的數據?我會懷疑一個不滿的員工。

相關問題