ファイルとファイル グループを使用したデータベースの拡張の管理

データベースを作成するときに、データ ファイルとログ ファイルの初期サイズを指定するか、既定のサイズをそのまま使用する必要があります。データベースにデータが追加されるに従い、ファイルの容量がいっぱいになります。ただし、ファイルに格納できる以上のデータがデータベースに追加された場合、割り当てた初期サイズ以上にデータベースを拡張するかどうか、また拡張する場合はどのように拡張するかを検討する必要があります。

既定では、ディスク領域がいっぱいになるまで、データ ファイルが自動的に拡張されます。したがって、データベース ファイルを作成時の指定以上に拡張しない場合は、データベースの作成時に SQL Server Management Studio または CREATE DATABASE ステートメントを使用して、そのように指定する必要があります。

また、SQL Server では、データがその容量に達した場合にあらかじめ指定された最大サイズまで自動拡張されるデータ ファイルを作成できます。この指定により、ディスク領域を使い切ってしまう状況を回避できます。

推奨事項

データベースを作成する際に、データベースに書き込まれるデータの最大量を基に、データ ファイルのサイズを可能な限り大きく設定しておきます。また、自動拡張も許可しますが、データ ファイルの拡張後の最大サイズを設定して、ハード ディスク上の空き領域がなくならないようにします。このように設定することで、予定外のデータが入力されてもデータベースが自動的に拡張され、ハード ディスク上の空き領域も確保できます。データ ファイルが初期サイズを超過し、ファイルの自動拡張が開始された場合は、必要なデータベースの最大サイズを再度検討してください。その後、必要に応じてディスク領域を追加したり、ファイルやファイル グループを作成してデータベースに追加するなどの計画を立ててください。

ただし、初期サイズを超えてデータベースが拡張されることはないと予想される場合は、データベースの最大拡張サイズを 0 に指定します。このように設定することで、データベース ファイルは拡張されなくなります。データベース ファイルがデータでいっぱいになると、データベースにデータ ファイルが追加されるか、または既存のファイルが拡張されるまで、データの追加は行われません。

ファイルの断片化

ファイルの自動拡張を許可すると、複数のファイルが同じディスクを共有することによるファイルの断片化が発生することがあります。そのため、ファイルやファイル グループは可能な限り多く、ローカルの異なる物理ディスク上に作成することをお勧めします。また、オブジェクトどうしが領域を争うような場合は、これらのオブジェクトを別々のファイル グループに配置します。