0
  • 「ASP.NET 構成」ツールを使用して、ASP.NET サイトに保護されたフォルダーを作成しました。
  • App_Data/ASPNETDB.MDF というデータベースを作成し、1 人のユーザーを格納します。
  • アップロード中に、データベースが 10 MB に成長し、.ldf ファイルが 5 MB になっていることに気付きました。(!)
  • SQL Server 2008 Management Studio で確認しようとしましたが、アタッチすると「この要求のデータを取得できませんでした」と表示されました。

この ASPNETDB.MDF の肥大化は、他の誰かにも起こりましたか?

4

2 に答える 2

2

データベースのサイズは実際には無関係です。ファイルには 1 ~ 2 KB のデータしかない場合がありますが、SQL Server がデータベース ファイルを作成するとき、データベース ファイルに入れる予定のデータの量がわからないため、余分なスペースが追加されます。この方法では、(ほとんどのユーザーが行うように) さらにデータを追加する場合、すべて連続しており、SQL Server はファイルを継続的に拡張する間、アプリケーションの実行を遅らせる必要はありません。データベースを作成するときに、より小さいサイズを指定できます。おそらく、それを削除して、代わりに 1MB の DB として再作成する必要があります。

確実に確認したい場合は、この記事にデータベース内のすべてのオブジェクトのサイズを取得するためのスクリプトがあり、特定の問題のあるオブジェクトがあるかどうかを確認できますが、私の推測では、それらはすべて小さく、残りは空きスペースになります。

于 2009-01-14T15:15:50.017 に答える
0

これは aspnetdb のデフォルト サイズにすぎないと思います。少なくとも SQL 2005 Express では、最初はすべての aspnetdb データベースが 10 MB です。

于 2008-11-26T12:26:18.860 に答える