SQL Server 為什麼要進行交易紀錄備份?

2024-11-21

說明為什麼 SQL Server 資料庫伺服器要定期進行交易紀錄備份,除了是時間點還原所必須外,也可以避免 ldf 檔案持續增加,耗盡伺服器空間。

SQL Server Logo

說明

🤔 來自使用者的靈魂拷問,為什麼要做交易紀錄備份:

交易紀錄都存在資料庫的 ldf 檔案中,而交易紀錄可以重現資料庫的增修異動行為,達成時間點還原,既然如此,我們只要透過 ldf 的交易紀錄來進行時間點還原就好,為什麼還需要交易紀錄備份?

  • 第一個原因:進行還原作業,乃至於時間點的還原,需要一份備份檔 (bak) 搭配交易紀錄備份 (trn) 來進行,所以交易紀錄的備份是必要的。

否則在需要時間點還原的時候,必須要先進行交易紀錄備份,才去做時間點還原,在分秒必爭的情況下,會大增作業上的壓力與困擾。

  • 第二個原因:如果不進行交易紀錄備份,ldf 使用的檔案空間會持續增加,直到耗盡伺服器空間為止。而藉由交易紀錄備份可以截斷 ldf 當中的交易紀錄,進行備份與壓縮並儲存在冷儲存裝置,例如磁帶機或是雲端儲存,保持伺服器的運作效能。