ファイルを圧縮する方法 (SQL Server Management Studio)

このトピックでは、SQL Server Management Studio のオブジェクト エクスプローラーを使用して、データ ファイルまたはログ ファイルを圧縮する方法について説明します。プライマリ データ ファイルは、model データベースのプライマリ ファイルのサイズより小さくすることはできません。

ファイルの末尾にあるデータのページを、ファイルの先頭に近い占有されていない領域に移動することにより、データ ファイルが圧縮され、領域が回復されます。ファイル末尾に十分な空き領域が作成された場合は、ファイル末尾のデータ ページの割り当てを解除して、ファイル システムに戻すことができます。

注記注意

ファイルを圧縮するために移動されたデータは、ファイル内のあらゆる使用可能な場所に分散される場合があります。これにより、インデックスの断片化が発生し、広範なインデックスを検索するクエリのパフォーマンスが低下する場合があります。断片化を解消するには、圧縮後にファイルのインデックスを再構築することを検討してください。

データ ファイルまたはログ ファイルを圧縮するには

  1. オブジェクト エクスプローラーで、SQL Server データベース エンジンのインスタンスに接続し、そのインスタンスを展開します。

  2. [データベース] を展開し、圧縮するデータベースを右クリックします。

  3. [タスク][圧縮] の順にポイントし、[ファイル] をクリックします。

  4. ファイルの種類とファイル名を選択します。

  5. 必要に応じて、[未使用領域を解放する] をオンにします。

    このオプションをオンにすると、ファイル内の未使用領域がオペレーティング システムに解放され、最後に割り当てられたエクステントにファイルが圧縮されます。これにより、データを移動しなくてもファイル サイズが減少します。

  6. 必要に応じて、[未使用領域の解放前にファイルを再構成する] をオンにします。このオプションをオンにする場合は、[圧縮先のファイル] の値を指定する必要があります。既定では、このオプションはオフになっています。

    このオプションをオンにすると、ファイル内の未使用領域がオペレーティング システムに解放され、未割り当てページに行の再割り当てを試みます。

  7. 必要に応じて、データベースを圧縮した後に、データベース ファイル内に残す空き領域の最大のパーセンテージを入力します。0 ~ 99 の値を指定できます。このオプションは、[未使用領域の解放前にファイルを再構成する] がオンになっている場合にのみ使用できます。

  8. 必要に応じて、[データを同じファイル グループの他のファイルに移行してファイルを空にする] をオンにします。

    このオプションをオンにすると、指定したファイルのすべてのデータが同じファイル グループの他のファイルに移動されます。その後、空になったファイルを削除できます。このオプションは、EMPTYFILE オプションを指定して DBCC SHRINKFILE を実行するのと同じ効果があります。

  9. [OK] をクリックします。