web-dev-qa-db-ja.com

tempdbがこれ以上成長できない場合はどうなりますか?

無制限に拡張するように設定されたtempdbデータベースが、使用可能なすべてのディスク領域(通常の10倍)を使い果たしてしまうという問題が発生しました。最大サイズ制限を設定することを検討しています。これは大きなものですが、すべてのスペースではありません。

クエリがtempdbを限界まで押し上げた場合、スペースを使い果たしているクエリが削除され、スペースが解放されて他のすべてが正しく機能するようになることを期待しています。これは発生する可能性がありますか、それともSQL Serverは完全に停止しますか?

答えてくれてありがとう。

3
Iain Hoult

このトピックに関する良い記事があります ここ (ページの約3/4)。抜粋は次のとおりです。

この例では、図25に示すように、200 MBのファイルサイズ制限に達する前にクエリが3分間実行され、ファイルグループがいっぱいであるというエラーが表示されます。

この時点で、TempDBを使用する必要がある他のクエリと同様に、クエリは明らかに失敗します。 SQL Serverは引き続き正常に機能していますが、一時テーブル#HoldAllが存在する限り、TempDBはいっぱいのままになります。

DBAとしての3つのオプションは、次のとおりです。

  • SQLServerを再起動します。
  • TempDBデータベースを縮小してみてください。
  • 誤ったクエリを見つけて根絶します。
2
Jon Seigel