問題があります。mdf サイズが13 GBでldf サイズが 96 GBであることがわかりました。データベース テーブルからすべてのレコードを削除して、mdf と ldf のサイズを減らしました。DATA_AQUA go exec sp_updatestats も使用しました。 DBCC SHOW_STATISTICSコマンドで null 値が返されますが、すべてのレコードを削除すると予想されますが、表示されるサイズは小さくなりますが、まだ古いサイズが表示されます。これを解決する方法を教えてください。
2 に答える
ドキュメントを読み始めます。
あなたの手順のいずれも、ドキュメントごとにこれらのファイルを小さくすることはありません。
LDF は、バックアップを作成してログを切り捨てていないことを示しています。それは非常に悪いことであり、私はファイルサイズが問題ではなく、バックアップがなく、データを気にしていないように見えるという事実を敢えて言います.
バックアップを取得したら、単純なリカバリに切り替えてから縮小操作を実行するという一連の手順を使用して、LDF を再初期化できます。
MDF について - 同じこと。データベースを縮小するには、メンテナンス タスクを使用してデータベースを再編成する必要があります。
updatestats を使用してレコードを削除すると、魔法のようにファイルが縮小されるのはなぜだと思いますか?
LDF については、通常のトランザクション ログ バックアップを実行するか、フル リカバリ モードからシンプル リカバリ モードに切り替える必要があります。この 2 つのアクションのいずれかを実行するまで成長します。いずれの場合も、アクションを実行した後、ldfファイルを圧縮する必要があることに注意してください。
メイン DB からレコードを削除した場合、mdf は自動的に縮小されませんが、ldf から同じ縮小メカニズムを使用できます (データベース -> タスク -> 縮小 -> ファイルまたはDBCC Shrinkfile (<DBName>, <TargetSize>)