SQLServer – ファイルを圧縮する

・ファイルを圧縮しても小さくならない。
SQLServerのファイル(mdf)は、サーバーが管理をしており、中のデータ(レコード)が少なくなっても、ファイルの大きさは、ほとんど変化しません。各データベースには「圧縮」がついていますが、これをおこなっても、ファイルが小さくなることはなく、未使用領域が増えたりするだけです。
mdfファイルは稼動中は、コピーすることもできません。ファイルを固定することによって、安定した高速処理を実現しているのでしょう。

・mdfファイルを小さくする。
ファイルを最小にしたい場合は、以下の方法を試してみてください。

・アクセス
アクセス等で、SQLServerの実データをインポートし、作成しておく。
対象のSQLServerのリンクテーブルの選択クエリで、削除クエリを実行する。

・SQLマネージャ
SQLマネージャで、データベースの「圧縮」をおこなう。

「ファイルの圧縮」はデフォルトのままで。


「データベースの圧縮」は、再構築にチェックを入れる。


これでデータベースファイルが小さくなる。
上記のファイルの圧縮で、データベースファイルが小さくなるが、ログファイルがその分大きくなる。
下の再構築をするとログファイルも小さくなる。

○最小データベースの保管と再構築
定義されたほぼ空のデータベースとして、保管しておく。ファイルが壊れたりした場合などの、データベースのリセットに最適。
その後、アクセス等で、作成しておいたデータを追加クエリで流し込む。
ファイルが小さくなるため、キャッシュ等がなくなりパフォーマンスが落ちるが、しばらく使用していると、パフォーマンスは戻る。

Comments are closed.