SQL Server 2008 備份壓縮

iSQlServer發表於2009-01-16

SQL Server 2008 Enterprise 中引入了備份壓縮。本主題討論備份壓縮的基本內容,包括壓縮備份時的效能權衡。

注意:
雖然只有 SQL Server 2008 Enterprise 及更高版本支援建立壓縮的備份,但從 SQL Server 2008 開始,每個版本都可以還原壓縮的備份。
 


 限制
壓縮的備份具有以下限制條件:

壓縮的備份和未壓縮的備份不能共存於一個媒體集中。

早期版本的 SQL Server 無法讀取壓縮的備份。

NTbackup 無法共享包含壓縮的 SQL Server 備份的磁帶。

 壓縮備份的效能影響
因為相同資料的壓縮的備份比未壓縮備份小,所以壓縮備份所需的裝置 I/O 通常較少,因此通常可大大提高備份速度。

預設情況下,壓縮會顯著增加 CPU 的使用,並且壓縮排程所消耗的額外 CPU 可能會對併發操作產生不利影響。因此,您可能需要在會話中建立低優先順序的壓縮備份,其 CPU 使用率受資源調控器限制。有關詳細資訊,請參閱如何使用資源調控器限制備份壓縮的 CPU 使用量 (Transact-SQL)。

若要很好地瞭解備份 I/O 的效能表現,可以通過評估以下型別的效能計數器來分別考察進入裝置或來自裝置的備份 I/O:

Windows I/O 效能計數器,例如物理磁碟計數器

SQLServer:Backup Device 物件的 Device Throughput Bytes/sec 計數器

SQLServer:Databases 物件的 Backup/Restore Throughput/sec 計數器

有關 Windows 計數器的資訊,請參閱 Windows 幫助。有關如何使用 SQL Server 計數器的資訊,請參閱使用 SQL Server 物件。

 配置
安裝時,預設情況下關閉了備份壓縮。備份壓縮的預設行為是由備份壓縮預設選項伺服器級配置選項定義的。您可以在建立單個備份或計劃一系列例行備份時覆蓋伺服器級預設設定。

更改伺服器級預設設定

Transact-SQL
使用 sp_configure 儲存過程設定備份壓縮預設設定的值,然後執行 RECONFIGURE 語句。

SQL Server Management Studio
使用“伺服器屬性”對話方塊的“資料庫設定”頁。有關詳細資訊,請參閱如何檢視或更改備份壓縮預設選項 (SQL Server Management Studio)。

覆蓋備份壓縮預設設定

您可以更改單個備份、備份作業或日誌傳送配置的備份壓縮行為。

Transact-SQL
對於給定備份,可以在 BACKUP 語句中使用 WITH NO_COMPRESSION 或 WITH COMPRESSION。
對於日誌傳送配置,可以使用 sp_add_log_shipping_primary_database sp_change_log_shipping_primary_database (Transact-SQL) 控制日誌備份的備份壓縮行為。

SQL Server Management Studio
您可以通過在以下任意對話方塊中指定“壓縮備份”或“不壓縮備份”來覆蓋伺服器備份壓縮預設設定:

備份資料庫(“選項”頁)
備份資料庫時,可以控制單個資料庫、檔案或日誌備份的備份壓縮。

維護計劃嚮導
通過維護計劃嚮導,您可以控制所計劃的每組型別為完全或差異的資料庫備份或日誌備份的備份壓縮。

SQL Server 2008 Integration Services (SSIS) 備份資料庫任務
您可以在建立用於備份單個資料庫或多個資料庫的包時控制備份壓縮行為。

日誌傳送事務日誌備份設定
您可以控制日誌備份的備份壓縮行為。

 壓縮率
若要計算備份的壓縮率,請使用 backupset 歷史記錄表的 backup_size 列和 compressed_backup_size 列中有關此備份的值,如下所示:

backup_size:compressed_backup_size

例如,3:1 的壓縮率表明您可以節省大約 66% 的磁碟空間。若要查詢這些列,可以使用以下 Transact-SQL 語句:

 複製程式碼
SELECT backup_size/compressed_backup_size FROM msdb..backupset;壓縮備份的壓縮率取決於所壓縮的資料。有多種因素會影響所獲得的壓縮率。主要因素包括:

資料型別。
字元資料的壓縮率要高於其他型別的資料。

頁面上各行間資料的一致性。
通常,如果某頁包含多個行,而其中的某個欄位包含相同的值,則該值可獲得較大的壓縮。相反,對於包含隨機資料或者每頁只有一個很大的行的資料庫,壓縮備份的大小几乎與未壓縮的備份相同。

資料是否加密。
與同樣的未加密資料相比,加密資料的壓縮程度要小很多。如果使用透明資料加密來加密整個資料庫,則壓縮備份不會將資料庫大小減小很多,甚至根本不會減小。

資料庫是否壓縮。
如果壓縮資料庫,則壓縮備份不會將大小減小很多,甚至根本不會減小。

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-539855/,如需轉載,請註明出處,否則將追究法律責任。

相關文章