Loading...

We've detected that your browser language is Chinese. Would you like to visit our Chinese website? [ Dismiss ]
By: Emma

大規模データベースは多くのストレージ領域を消費し、バックアップに時間がかかるため、ストレージコストの上昇とパフォーマンス低下を引き起こします。SQL Serverバックアップ圧縮はこれらの課題を解決します。平均でバックアップファイルを50%~80%削減し、ストレージ領域を節約すると同時にバックアップ処理を大幅に高速化します。

SQL Serverのバックアップ処理を高速化したい場合、圧縮はCPU使用率を若干消費するものの非常に有効な手段です。本記事では、SSMSによる簡単な手順からZSTDアルゴリズムといった高度なツールまで、SQL Serverでバックアップ圧縮を有効にする4つの方法を解説します。

SQL Serverバックアップ圧縮とは何か

SQL Serverバックアップ圧縮は、バックアップファイルのサイズを削減する機能です。この機能を有効にすると、データベースエンジンはディスクへ書き込む前にデータを圧縮します。その結果、元のデータベースサイズよりもはるかに小さいバックアップファイルが生成されます。

他の種類の圧縮と区別することが重要です。例えば「データ圧縮」(行・ページ圧縮)はデータベーステーブル内部で実行されます。バックアップ圧縮はバックアップ処理実行時のみ動作します。圧縮済みテーブルがなくても圧縮バックアップを利用可能です。

技術的に、バックアップの圧縮率はデータ型に依存します。テキストデータや数値データは圧縮効果が高い一方、暗号化データや既に圧縮済みのファイル(PDF、ZIPなど)はサイズがほとんど縮小しません。旧バージョンのSQL Serverは独自の標準アルゴリズムを使用していましたが、SQL Server 2025では圧縮効率に優れたZstandard(ZSTD)アルゴリズムが導入されました。

SQL Serverバックアップ圧縮のメリット

圧縮を活用することで、データベース管理者にとって複数の大きな利点が得られます。大規模データ管理でよく発生する速度、領域、コストの課題に対応します。

ストレージ使用量の削減

圧縮によりバックアップファイルサイズが大幅に縮小され、一般的な圧縮率は50‑80%です。テキストや重複値を含むデータベースで効果が高く、暗号化データや画像などのバイナリファイルでは領域削減効果は小さくなります。

バックアップ時間の短縮

圧縮によりCPU使用率は上昇しますが、ディスクへ書き込むデータ量が減少するためディスクI/Oのボトルネックが解消されます。これによりSQL Serverのバックアップ処理が高速化され、保守時間枠内でバックアップを完了させやすくなります。

オフサイト転送の高速化

サイズの小さい圧縮バックアップは、オフサイトや災害復旧先へより速く転送できます。帯域幅の消費を抑え、オフサイトのバックアップを最新の状態に保ち、復旧準備性(RPO)を高めます。

(クラウド)バックアップコストの削減

圧縮バックアップは、使用ギガバイト数を抑えることでAzure、AWSなどのクラウドストレージコストを削減します。また、ローカルへリストアするためクラウドからバックアップをダウンロードする際の出力帯域料金も削減できます。

SQL Serverで圧縮付きバックアップを実行する方法

SQL Serverのバックアップ圧縮は、GUI画面、T‑SQLスクリプト、サーバー全体の既定設定など複数の柔軟な方法で有効化できます。実装が簡単で広く使われている方法から順に解説します。

方法1:SSMSを使用した圧縮バックアップ

多くのDBAにとって、SQL Server Management Studio(SSMS)は圧縮バックアップを作成する最も簡単な手段です。手動バックアップタスクや単一のバックアップジョブの圧縮設定変更に適しています。

手順:

  1. SSMSを起動し、対象のSQL Serverインスタンスに接続します。
  2. バックアップ対象のデータベースを右クリックします。
  3. 「タスク」にカーソルを合わせ、「バックアップ…」を選択します。Database‑Tasks‑Backup in SSMS GUI to backup database
  4. [全般]タブで、バックアップ先(ディスクまたはURL)が正しいことを確認します。
  5. 左ペインから[バックアップオプション]タブを開きます。
  6. ウィンドウ下部の圧縮セクションを探します。
  7. ドロップダウンを「サーバーの既定の設定を使用する」から「バックアップを圧縮する」に変更します。
  8. [OK]をクリックし、圧縮バックアップを実行します。Backup Options‑Compression‑Compress backup‑OK SSMS GUI
補足:SQL Server 2016以前のバージョン:圧縮機能はStandard/Enterpriseエディションが必要です(Expressエディションは圧縮バックアップのリストアのみ可能、作成は不可)。

方法2:T‑SQLを使用した圧縮バックアップ

自動実行やジョブスケジューリングが容易なため、多くのDBAがT‑SQLスクリプトによるバックアップを好んで使用します。バックアップコマンドに`COMPRESSION`キーワードを追加するだけで圧縮を有効にできます。

T‑SQLでの圧縮バックアップは直感的に記述できます。代表的な3種類のバックアップの簡潔なスクリプトを以下に示します。

  1. 完全データベースバックアップ

データベースの完全な圧縮コピーを作成します:

-- 圧縮付き完全バックアップ(完全性検証+進捗表示)

BACKUP DATABASE [YourDatabaseName]

TO DISK = 'C:\Backups\YourDatabase_Full.bak'

WITH COMPRESSION, CHECKSUM, STATS = 10;

  1. 差分バックアップ

前回の完全バックアップ以降に変更されたデータのみを圧縮します:

-- 圧縮付き差分バックアップ

BACKUP DATABASE [YourDatabaseName]

TO DISK = 'C:\Backups\YourDatabase_Diff.bak'

WITH DIFFERENTIAL, COMPRESSION, CHECKSUM;

  1. トランザクションログバックアップ

トランザクションログを圧縮します。ログ量が多い高負荷データベースで重要です:

-- 圧縮付きトランザクションログバックアップ

BACKUP LOG [YourDatabaseName]

TO DISK = 'C:\Backups\YourDatabase_Log.trn'

WITH COMPRESSION;

ベストプラクティスとして例に`CHECKSUM`を含めています。バックアップ作成時にファイルの破損を検知します。T‑SQLにより、圧縮バックアップの保存先や設定を制御でき、自動化ワークフローに柔軟に対応可能です。

方法3:インスタンスレベルでの既定の圧縮設定

すべてのバックアップごとに手動で圧縮を有効にするのは手間がかかり、設定漏れの原因になります。代わりにインスタンスレベルでSQL Serverバックアップ圧縮の既定値を設定すると、以降の新規バックアップは自動的に圧縮され、個別ジョブごとの操作が不要になります。

SSMSで既定値を設定

  1. オブジェクトエクスプローラーで対象SQL Serverインスタンスを右クリック
  2. 「プロパティ」を選択
  3. 左側の「データベース設定」タブをクリック
  4. 「バックアップと復元」配下の「バックアップを圧縮する」チェックボックスをオン
  5. [OK]をクリックDatabase Settings‑check the Compress backup box and click OK in SSMS GUI

T‑SQLで既定値を設定

`sp_configure`コマンドで迅速に設定可能で、複数サーバーを一括管理する場面に適しています:

-- インスタンス全体の既定としてバックアップ圧縮を有効化

EXEC sys.sp_configure N'backup compression default', N'1';

RECONFIGURE WITH OVERRIDE;

この既定値を設定後、明示的な圧縮指定のないバックアップコマンドは自動で圧縮が適用されます。一時的に非圧縮のバックアップを実行したい場合はT‑SQLスクリプトに`NO_COMPRESSION`キーワードを追加してください。最新のSQL Server環境における標準的なベストプラクティスであり、全バックアップのストレージを自動的に節約できます。

方法4:ZSTD(Zstandard)などの内部圧縮アルゴリズム

SQL Server 2025では、従来の内部圧縮方式に代わる新しい高度なバックアップ圧縮アルゴリズムZstandard(ZSTD)が導入されました。ZSTDは圧縮率に優れ、CPUオーバーヘッドが低いため従来の圧縮より効率的です。

非常に大きなデータベースに適しており、バックアップファイルをより効果的に小さくし、バックアップ処理を高速化します。

ZSTD圧縮はT‑SQLからのみ利用可能で、SSMSに専用のチェックボックスはまだ存在しません。圧縮バックアップコマンドに`ALGORITHM = ZSTD`パラメータを追加するだけで利用できます:

-- SQL Server 2025 ZSTD圧縮アルゴリズムによるバックアップ

BACKUP DATABASE [YourDatabaseName]

TO DISK = 'C:\Backups\YourDatabase_ZSTD.bak'

WITH COMPRESSION (ALGORITHM = ZSTD), CHECKSUM;

SQL Server 2025を使用している場合、ZSTDはバックアップ速度とファイル圧縮率のバランスに優れた最適な選択肢です。

高効率なSQLバックアップ圧縮ツール

SQL Serverにはネイティブのバックアップ圧縮機能がありますが、多くの組織は単なるファイルサイズ削減以上の要件を持っています。最新環境では、データベース、仮想マシン、ファイルシステム、異種ストレージを横断した集中バックアップ管理、ネットワーク利用やバックアップ時間枠の詳細な制御が求められることが多いです。

i2Backupは、SQL Serverだけでなく複数のワークロードを保護するために設計されたバックアッププラットフォームです。高効率な圧縮、インテリジェントな転送最適化、柔軟なスケジューリングによりSQLバックアップを強化すると同時に、同一プラットフォーム上でシステム、ファイル、ストレージレベルのバックアップもサポートします。

i2Backupの主な機能

  • 高効率バックアップ圧縮:バックアップサイズを大幅に削減し、ストレージを節約、バックアップ/リストア処理を高速化。
  • 帯域幅制限・ネットワーク最適化:転送速度を制御・制限し、バックアップジョブが業務用帯域を消費することを防止。
  • マルチワークロード集中保護:単一プラットフォームでSQL Serverデータベース、ファイル、システム、複数種類のストレージに対応。
  • 柔軟なスケジュール設定:分、時、日、週、月、四半期、年単位のスケジュール、独自の時間枠や除外設定に対応。
  • 幅広いストレージ互換性:ローカルディスク、SAN、NAS、ZFS、S3対応オブジェクトストレージ、テープライブラリ、光ディスクライブラリへのバックアップに対応。
  • Web管理コンソール:ブラウザからバックアップインフラ全体を集中監視・管理。

個人プロジェクトや小規模サーバーであればSQL Serverネイティブの圧縮で十分な場合が多いです。一方、大規模環境、コンプライアンスが求められる環境、ミッションクリティカルな環境では、i2Backupがより完全で信頼性の高いソリューションとなります。圧縮、インテリジェントな帯域制御、エンタープライズ向けバックアップ管理を単一プラットフォームに統合しています。

SQL Serverバックアップ圧縮のベストプラクティス

以下のベストプラクティスを守ることで、圧縮処理を効率的かつ信頼性の高いものにし、回避可能なエラーを防げます。圧縮ファイルのメリットを最大限に引き出しつつ、バックアップの完全性を守る上で重要です。

必ずWITH CHECKSUMを使用する

SSMSまたはT‑SQLを問わず、すべての圧縮バックアップコマンドに`WITH CHECKSUM`句を追加してください。バックアップ処理中にデータ完全性を検証し、圧縮によって見えにくくなる元データまたはバックアップファイルの破損を検知し、圧縮バックアップがリストア可能であることを保証します。

大規模データベースではバックアップストライピングを活用

大きなデータベースでは、圧縮と併せてバックアップストライピングを使用します。圧縮バックアップを複数のディスクファイル/ボリュームに分割します。単一ドライブのI/O競合を抑え、圧縮バックアップとリストアの時間を短縮し、巨大な圧縮ファイルの管理や転送を容易にします。

二重圧縮を避ける

既に圧縮済みのデータを再度圧縮しないでください。CPUリソースを浪費する上、ファイルサイズが増大する、またはほとんど削減効果が得られない場合があります。ZIP、PDF、暗号化ファイル、圧縮済みメディアなどを含むバックアップでは圧縮を無効にし、SQL Serverの圧縮済みバックアップファイルに対してOSレベルの圧縮を適用しないでください。

128KBルール(MAXTRANSFERSIZE)

T‑SQLバックアップコマンドで`MAXTRANSFERSIZE = 131072 (128KB)`を設定し圧縮効率を最適化します。この128KBブロックサイズはSQL Serverの圧縮エンジンに適合し、オーバーヘッドを抑え、多くのデータベースワークロードにおいて圧縮率とバックアップ速度を向上させます。

書き込み後の検証を実施

バックアップが正常完了したと安易に考えず、作成直後に圧縮バックアップを必ず検証してください。SSMSのバックアップ完全性検証ツール、または`RESTORE VERIFYONLY`のT‑SQLコマンドを使用し、圧縮ファイルが破損しておらず読み取り・リストア可能であることを確認し、重要な復旧局面で破損が発覚する事態を回避します。

よくある質問

Q1:SQL Serverバックアップ圧縮はリストア時間に影響しますか?

通常はリストアが高速になります。CPUはデータの展開処理を行うものの、ディスクから読み込むデータ量が大幅に減少します。ほとんどの環境でボトルネックはディスク速度であるため、圧縮バックアップの方が非圧縮より速くリストアできます。

 

Q2:バックアップ圧縮におけるSQL Server StandardとEnterpriseエディションの違いは?

古いSQL Serverバージョンではバックアップ圧縮はEnterpriseエディションのみで利用可能でした。2016以降はStandard、Enterprise両エディションで圧縮バックアップの作成に対応しています。Expressエディションは圧縮バックアップのリストアのみ可能で、作成はできません。

 

Q3:差分バックアップやログバックアップも圧縮できますか?

はい。SQL Serverのバックアップ圧縮は完全、差分、トランザクションログ、すべてのバックアップ種別に対応します。ログデータが大量に生成される高負荷データベースでは、ログバックアップの圧縮が特に有用です。

 

Q4:圧縮を有効にするとバックアップ作成処理は遅くなりますか?

いいえ、通常は速くなります。圧縮によりCPU使用率は上昇しますが、ディスクへ書き込むデータ量が大幅に削減されます。多くのサーバーではディスクI/Oが主なボトルネックであるため、書き込むデータが少なくなることでバックアップ完了が速くなります。

 

Q5:期待できる圧縮率はどの程度ですか?

一般的な圧縮率は50‑80%で、バックアップファイルは元データの2‑5分の1のサイズになります。テキストや数値データで効果が大きく、暗号化データ、画像やPDFなどのファイルでは圧縮によるサイズ削減効果はほとんど得られません。

まとめ

SQL Serverバックアップ圧縮はすべてのDBAにとって重要なツールです。バックアップ処理の遅延とストレージコスト高騰の課題を解決します。ファイルサイズを削減することで領域を節約し、保守タスクをより速く完了できます。

本記事ではSQL Serverでバックアップ圧縮を有効にする4つの方法を紹介しました。手動作業にはSSMS、自動スクリプトにはT‑SQLを使用できます。またインスタンスレベルの既定設定や、最高のパフォーマンスを得るための高度なZSTDアルゴリズムも利用可能です。

さらに良い結果を得たい場合はi2Backupのようなプロフェッショナルツールの活用を検討してください。これらのソリューションはバックアップ圧縮戦略をより信頼性が高く、管理しやすいものにします。今日からサーバーの既定値に圧縮を設定し、時間とコストの節約を始めましょう。

概要は準備中です

関連記事

SQL Server Management Studioでデータベースをバックアップする方法
このガイドでは、SQL Server Management Studio(SSMS)におけるデータベースのバックアップ手順を詳しく解説しています。GUIによる手動操作、カスタムT‑SQLスクリプト、自動化ソリューション、さらにi2Backupによるエンタープライズ向けの高度な運用方法を扱っています。
記事を読む
SQL Serverデータベースが復元状態でスタックした場合の6つの効果的な解決策
SQLデータベースが復元モードのままになるトラブルが発生すると、データベースの復元作業が中断し、通常業務に影響を及ぼします。本記事では代表的な発生原因を解説し、当該問題を効率的に診断・解決する6つの実用的な手法を紹介します。
記事を読む
実績のある 8 つの手法による MySQL データベースのバックアップ方法
MySQLデータベースのバックアップは、ハードウェア障害、ランサムウェア、人為的ミスによるデータ損失を防ぐために不可欠です。本ガイドでは、全バックアップ、増分バックアップ、ホットバックアップ、コールドバックアップといったすべてのバックアップ種別、実践可能な8つの手法、信頼性の高いバックアップ戦略を構築するための専門家のベストプラクティスを解説します。
記事を読む
MySQLバックアップツール7選:おすすめ製品、メリット・デメリット
MySQLバックアップツールはデータベースの安全性確保と耐障害性戦略の構築に重要です。本記事を読んで、7種類の一般的なMySQLバックアップソフトウェアを学び、自身のデータベースに適したバックアップ・リストアツールの選び方を理解しましょう。
記事を読む
目次:
最新情報を購読
最新のインサイト、ニュース、限定コンテンツをお届けします。いつでも配信解除が可能です。
購読する
ビジネスデータのセキュリティ強化を始めませんか?
60日間の無料トライアルまたはデモで、Info2softが企業データをどのように保護するかをご確認ください。
フォームにご記入の上、送信してください。担当者より追ってご連絡いたします。
このフォームを送信することにより、 プライバシー通知を読み、同意したことを確認します。
{{ isSubmitting ? '送信中...' : '送信する' }}