3

我已經閱讀了SQL Server事務日誌,但仍不完全瞭解如何使用/管理它們。我知道它們對於事務回滾,鏡像,複製和日誌傳送等很重要。不太瞭解SQL Server事務日誌

對我來說,它們看起來仍然像一個黑盒子,我並不完全樂於與它們做任何事情。是否有工具可以讓我查看事務日誌文件或獲取有關它的信息?如果我不需要諸如事務日誌傳送之類的東西,我可以定期縮減和/或截斷我的日誌文件嗎?特別是在將備份還原到測試實例的情況下 - 我真的需要佔用空間的多GB的日誌文件嗎?我還需要注意哪些其他功能對事務日誌有特別的依賴性,如果我縮小/截斷日誌文件將無法工作?

回答

5

作爲一般規則,除了確保它們不會太大以外,您不需要對事務日誌執行任何操作。雖然可以使用日誌挖掘工具從中讀取這些信息,但這種情況很少見,並且除非您對DBA角色的其他方面感到滿意,否則不要擔心。

他們是一個黑匣子,他們工作得很好。

您應該選擇一個適合您業務需求的恢復模式。一般來說,這將涉及確定是否需要時間點恢復,如果可能的話可能是「完全恢復模型」或其他「簡單恢復模型」。

如果您確實使用完全恢復模式,那麼您偶爾需要備份數據庫(每天或每週,差異是常見選項),而您的交易記錄每15分鐘,幾小時取決於交易量,可用空間以及您在最差情況下可承受損失的最大數據量。

如果您偶爾使用簡單恢復備份數據庫,但瞭解您無法進行時間點恢復。

在開發和測試中,在產品和「簡單恢復模型」中有「完全恢復模型」是很常見的。但是你必須確定你的特殊需求並自己作出決定。

「收縮」事務日誌的最安全方法是管理備份,以便您永遠不必明確這樣做。

閱讀恢復模型,隨時提問後續問題。

+0

能否詳細說說最安全的收縮日誌的方法嗎? – kenwarner 2011-05-11 03:45:21

+1

在完全恢復模式下,在最後一次數據庫備份之後發生的任何事務均會保留日誌中的空間。當發生備份時,Sql Server會釋放該空間。它現在可用於以後的交易,從而防止過度增長,而不是像這樣「縮小」。如果您不備份空間未被釋放的DB和/或事務日誌,導致事務日誌增長。儘管可以收縮日誌,但您的第一道防線應該是備份管理。 – Karl 2011-05-11 04:31:39