web-dev-qa-db-ja.com

SQL Server Expressの4GB / 10GBの制限に達するとどうなりますか?

どのようなエラーが発生しますか?ユーザーは何を体験しますか?ツールを使用してデータベースにアクセスできますか。また、4 GB/10 GBの制限を下回った場合はどうなりますか?

23
hawbsl

私が理解しているように、次のような例外メッセージがイベントログに表示されるようになります。

'PRIMARY'ファイルグループがいっぱいのため、データベース '[データベース]'のオブジェクト 'dbo。[テーブル]'に領域を割り当てることができませんでした。不要なファイルを削除し、ファイルグループ内のオブジェクトを削除して、ディスク領域を作成します。

その後、データベースのサイズを縮小できる場合は、以前と同様に続けてetcなどを追加できます。ツールは、データベースのサイズに関係なく機能します。

お役に立てれば!

13
Jason

手遅れですが、テストしました。 SQL Express 2008 R2の最大サイズは、データベースごとに10240 MBです。それに到達した後、挿入時にこのエラーが発生しました:

'PRIMARY'ファイルグループがいっぱいのため、データベース 'DBName'のオブジェクト 'TableName'。 'PK_Nme'に領域を割り当てることができませんでした。不要なファイルを削除するか、ファイルグループ内のオブジェクトを削除するか、ファイルグループにファイルを追加するか、ファイルグループ内の既存のファイルに対して自動拡張をオンに設定して、ディスク領域を作成します。

この後、SQLサービスを再起動し、停止して問題なく起動しました。 Select、update、deleteコマンドを実行できました。 (私は更新コマンドをテストしましたが、成功しましたが、もっと大きなものに更新するとエラーが発生する可能性があると思います!)

8
Aidin

次のようなエラーが表示される場合があります。

結果の累積データベースサイズが、データベースあたりのライセンス制限である4096 MBを超えるため、CREATE DATABASEまたはALTER DATABASEが失敗しました。

またはこれ:

'PRIMARY'ファイルグループがいっぱいのため、データベース 'WAYTOOBIG'のオブジェクト 'dbo.buyspace'。 'PK__buyspace__4B5BD7F83A81B327'に領域を割り当てることができませんでした。不要なファイルを削除するか、ファイルグループ内のオブジェクトを削除するか、ファイルグループにファイルを追加するか、ファイルグループ内の既存のファイルに対して自動拡張をオンに設定して、ディスク領域を作成します。

これはエラーログにあります。

4
8kb

ユーザーは、アプリケーションが機能しないことを体験します。通常、異常なエラーが高すぎて泡立ちます。

Expressで構築されたすべてのアプリは、最初の計画の一部として含まれている必要があります-どのようにサイズを抑えるか。計画-誰かがライセンス料を差し引かなければならないまで、大丈夫なときはいつでもそれについて心配します。そしてそれは通常、大量のフラストレーション、ダウンタイム、デバッグの後で、誰かが問題が完全なドライブであると考え、他の誰かが新しいコードのリリースなど、フラストレーションであると考え、ユーザーは別のベンダーを探すのにしばらく時間を費やした事前に計画できる人。私はきっとあなたがやっていることを確信しています。 最初にユーザーのことを考えてくれてありがとう!!!!!!!!!

3
Jeff Maass

サイズを増加させるアクション(挿入、更新など)は失敗します。それでも、データベースにアクセスしてメンテナンスを実行し、サイズを元に戻すことができます。

データベースがこのサイズに達する前に警告するようにいくつかのメンテナンスジョブをセットアップして、データの損失を防ぐことができます。

2
Gavin

おそらく、これ以上データを挿入することはできませんが、選択することはできます。

2

私が正しく覚えているとしたら、それが起こったとき、データベースはちょうど停止しました。十分なスペースを確保して問題を解決するために、バックアップを行う必要がありました。

SQL Server 2008 Express R2には10 GBの制限があるため、アップグレードする価値があるかもしれません。

1
JonPayne