SQL Server 2005 の最大容量仕様
更新 : 2007 年 9 月 15 日
次の表に、Microsoft SQL Server 2005 コンポーネントで定義される各種オブジェクトの最大サイズと最大数を示します。
データベース エンジンのオブジェクト
次の表に、SQL Server 2005 データベースで定義される各種オブジェクト、または Transact-SQL ステートメントで参照される各種オブジェクトの最大サイズと最大数を示します。この表には、SQL Server Windows CE Edition は含まれていません。
SQL Server 2005 データベース エンジンのオブジェクト | 最大サイズ/最大数 SQL Server 2005 (32 ビット) | 最大サイズ/最大数 SQL Server 2005 (64 ビット) |
---|---|---|
バッチ サイズ1 |
65,536 * ネットワーク パケット サイズ |
65,536 * ネットワーク パケット サイズ |
通常の string 列ごとのバイト数 |
8,000 |
8,000 |
GROUP BY、ORDER BY ごとのバイト数 |
8,060 |
8,060 |
インデックス キーごとのバイト数2 |
900 |
900 |
外部キーごとのバイト数 |
900 |
900 |
主キーごとのバイト数 |
900 |
900 |
行ごとのバイト数8 |
8,060 |
8,060 |
varchar(max)、varbinary(max)、xml、text、または image 列ごとのバイト数 |
2^31-1 |
2^31-1 |
ntext または nvarchar(max) 列ごとの文字数 |
2^30-1 |
2^30-1 |
テーブルごとのクラスタ化インデックス数 |
1 |
1 |
GROUP BY、ORDER BY の列数 |
バイト数のみによって制限されます。 |
バイト数のみによって制限されます。 |
GROUP BY WITH CUBE または WITH ROLLUP ステートメント内の列または式の数 |
10 |
10 |
インデックス キーごとの列数7 |
16 |
16 |
外部キーごとの列数 |
16 |
16 |
主キーごとの列数 |
16 |
16 |
ベース テーブルごとの列数 |
1,024 |
1,024 |
SELECT ステートメントごとの列数 |
4,096 |
4,096 |
INSERT ステートメントごとの列数 |
1,024 |
1,024 |
クライアントごとの接続数 |
構成した接続の最大値 |
構成した接続の最大値 |
データベース サイズ |
524,258 テラバイト |
524,258 テラバイト |
SQL Server ごとのデータベース数 |
32,767 |
32,767 |
データベースごとのファイル グループ数 |
32,767 |
32,767 |
データベースごとのファイル数 |
32,767 |
32,767 |
ファイル サイズ (データ) |
16 テラバイト |
16 テラバイト |
ファイル サイズ (ログ) |
2 テラバイト |
2 テラバイト |
テーブルごとの外部キー テーブル参照数4 |
253 |
253 |
識別子長 (文字数) |
128 |
128 |
コンピュータごとのインスタンス数 |
スタンドアロン サーバー上に 50 個のインスタンス (Workgroup Edition を除くすべての SQL Server 2005 エディション、Workgroup Edition では最大 16 個のインスタンスがサポートされます)。 SQL Server 2005 ではフェールオーバー クラスタ上に 25 個のインスタンスがサポートされます。 |
スタンドアロン サーバー上に 50 個のインスタンス フェールオーバー クラスタ上に 25 個のインスタンス |
SQL ステートメントが含まれた文字列の長さ (バッチ サイズ)1 |
65,536 * ネットワーク パケット サイズ |
65,536 * ネットワーク パケット サイズ |
接続ごとのロック数 |
サーバーごとの最大ロック数 |
サーバーごとの最大ロック数 |
SQL Server インスタンスごとのロック数5 |
最大 2,147,483,647 |
メモリのみによって制限されます。 |
ストアド プロシージャの入れ子レベル数6 |
32 |
32 |
入れ子にしたサブクエリの数 |
32 |
32 |
トリガの入れ子レベル数 |
32 |
32 |
テーブルごとの非クラスタ化インデックス数 |
249 |
249 |
ストアド プロシージャごとのパラメータ数 |
2,100 |
2,100 |
ユーザー定義関数ごとのパラメータ数 |
2,100 |
2,100 |
テーブルごとの参照数 |
253 |
253 |
テーブルごとの行数 |
使用可能な記憶領域によって制限されます。 |
使用可能な記憶領域によって制限されます。 |
データベースごとのテーブル数3 |
データベース内のオブジェクト数によって制限されます。 |
データベース内のオブジェクト数によって制限されます。 |
パーティション テーブルまたはインデックスごとのパーティション数 |
1,000 |
1,000 |
インデックス付けされていない列の統計 |
2,000 |
2,000 |
SELECT ステートメントごとのテーブル数 |
256 |
256 |
テーブルごとのトリガ数3 |
データベース内のオブジェクト数によって制限されます。 |
データベース内のオブジェクト数によって制限されます。 |
テーブルごとの一意なインデックスまたは制約の数 |
249 (非クラスタ化の場合)、1 (クラスタ化の場合) |
249 (非クラスタ化の場合)、1 (クラスタ化の場合) |
ユーザー接続数 |
32,767 |
32,767 |
XML インデックス |
249 |
249 |
1 ネットワーク パケット サイズとは、アプリケーションとリレーショナル データベース エンジンの間の通信に使用される表形式のデータ ストリーム (TDS) パケットのサイズです。既定のパケット サイズは 4 KB であり、network packet size 構成オプションによって制御されます。
2 SQL Server 2005 では、インデックス キーの最大バイト数を 900 以下にする必要があります。最大サイズが合計で 900 を超える可変長列を使用してキーを定義することは可能ですが、900 バイトを超えるデータを持つ行がこれらの列に挿入されていない場合に限られます。SQL Server 2005 では、900 バイトの最大インデックス キー サイズを避けるため、非クラスタ化インデックスに非キー列を含めることができます。詳細については、「付加列インデックス」を参照してください。
3 データベース オブジェクトには、テーブル、ビュー、ストアド プロシージャ、ユーザー定義関数、トリガ、デフォルト、制約などのオブジェクトが含まれます。1 つのデータベース内のオブジェクトの合計数は 2,147,483,647 以下にする必要があります。
4 1 つのテーブルには FOREIGN KEY 制約を無制限に含めることができますが、推奨最大数は 253 です。SQL Server をホストするハードウェア構成によっては、追加の外部キー制約を指定するとクエリ オプティマイザの処理が遅くなる可能性があります。
5 これは静的ロック割り当てに対する値です。動的ロックの場合は、メモリのみによって制限されます。
6 ストアド プロシージャが 9 つ以上のデータベースにアクセスするか、またはインターリーブ時に 3 つ以上のデータベースにアクセスすると、エラーが返されます。
7 テーブルに 1 つ以上の XML インデックスが含まれている場合は、XML 列がプライマリ XML インデックスのクラスタ化キーに追加されるため、ユーザー テーブルのクラスタ化キーが 15 列までに制限されます。SQL Server 2005 では、最大 16 のキー列制限を避けるため、非クラスタ化インデックスに非キー列を含めることができます。詳細については、「付加列インデックス」を参照してください。
8 SQL Server 2005 では、行オーバーフロー ストレージがサポートされています。これにより、可変長列の行外への移動が可能になります。行外に移動される可変長列のうち、ルートの 24 バイトだけが本体のレコードに格納されます。これにより、実際の行制限は、以前のリリースの SQL Server よりも高い値になります。詳細については、SQL Server 2005 Books Online の「8 KB を超える場合の行オーバーフロー データ」を参照してください。
レプリケーション オブジェクト
次の表に、SQL Server 2005 レプリケーションで定義される各種オブジェクトの最大サイズと最大数を示します。この表には、SQL Server Windows CE Edition は含まれていません。
SQL Server 2005 レプリケーション オブジェクト | 最大サイズ/最大数 SQL Server 2005 (32 ビット) | 最大サイズ/最大数 SQL Server 2005 (64 ビット) |
---|---|---|
アーティクル数 (マージ パブリケーション) |
256 |
256 |
アーティクル数 (スナップショットまたはトランザクション パブリケーション) |
32,767 |
32,767 |
テーブル内の列数1 (マージ パブリケーション) |
246 |
246 |
テーブル内の列数2 (SQL Server のスナップショットまたはトランザクション パブリケーション) |
1000 |
1000 |
テーブル内の列数2 (Oracle のスナップショットまたはトランザクション パブリケーション) |
995 |
995 |
行フィルタで使用される列のバイト数 (マージ パブリケーション) |
1024 |
1024 |
行フィルタで使用される列のバイト数 (スナップショットまたはトランザクション パブリケーション) |
8000 |
8000 |
1 競合の検出で行の追跡を使用する場合 (既定)、ベース テーブルには最大 1,024 列を含めることができます。ただし、最大で 246 列がパブリッシュされるように、列をアーティクルからフィルタ処理する必要があります。列の追跡を使用する場合、ベース テーブルには最大 246 列を含めることができます。追跡レベルの詳細については、「マージ レプリケーションで競合を検出および解決する方法」の「追跡レベル」を参照してください。
2 ベース テーブルには、パブリケーション データベースで許容される最大数 (SQL Server の場合は 1,024) の列を含めることができますが、列数がパブリケーション タイプに対して指定された最大数を超える場合は、アーティクルから列をフィルタ処理する必要があります。
参照
関連項目
SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア
システム構成チェッカーの検査パラメータ
その他の技術情報
SQL Server 2005 コンポーネントのインストール
ヘルプおよび情報
変更履歴
リリース | 履歴 |
---|---|
2007 年 9 月 15 日 |
|
2006 年 12 月 12 日 |
|
2006 年 7 月 17 日 |
|