DBCC ShrinkDatabase()
DBCC ShrinkFile()
- データベースを縮小するために、両方のDBCCコマンドを実行する必要がありますか?
- 上記の2つの違いは何ですか?
DBCC ShrinkDatabase()
DBCC ShrinkFile()
回答:
単に...
DBCC ShrinkDatabase()
:すべてのファイルを縮小するDBCC ShrinkFile()
:ただ1つのファイルたとえば、ログバックアップの問題があり、制御不能になり、を実行する場合がありますDBCC ShrinkFile()
。
使用することはほとんどありませんShrinkDatabase
。
いずれかのコマンドの使用を検討する前に、縮小に関するPaul Randalのブログを読んでください。
明確な理由がない限り、どちらのファイル(mdf、ldf)も縮小しません。ファイルは、必要なサイズであるためです。通常のメンテナンスの一環としてそうすることを提案しているブログは、おそらくSQL Serverの動作を理解していないでしょう。
デフォルトのデータベースには2つのファイルがあります
MyDb.MDFおよびMyDb.LDF
MDFファイルは、プライマリパーティションが存在するデータファイルです。ニーズに応じて、データベースを複数のファイルに分割できます。これは、データ(単一または複数のテーブル)が複数のファイルにまたがって、通常は別々のハードドライブに置かれ、より高いパフォーマンスを実現できるようにするためです。
データベースを縮小すると、そのデータベースに関連付けられているすべてのファイルが縮小されます。
ファイルを縮小すると、選択したファイルのみが縮小されます。
データベースの縮小コマンドのみを使用する必要があります。しかし、これを行うことは通常良い方法ではなく、推奨される方法でもありません。
発生している問題を教えてください、それを解決する方法に関する詳細情報を提供できます。
ほとんどの場合、dbcc shrinkfileのみを使用します。sp_helpdb 'databasename'は、データベース内のデータとログファイルのリストを提供します。
mnagement studioを右クリックすると、tasks-> shrink-> fileで縮小できる割合が表示されます。
何を縮小しても、空きスペースとしてディスク上で利用可能です。
例: 'databasename' dbcc shrinkfile(fileid、100)を使用します
ここで100は100 MBです
fileidはsp_helpdb 'databasename'から取得できます