いやーーまいりました。
仕事で切羽詰まっている中で、SQL-Serverにとんでもねぇトラブルが発生して半泣きになってしまいました。
現象は、Management Studioでクエリーを作っている最中に、数秒に一回フリーズするという現象。
最初は端末やManagement Studioの問題だと思っていたのですが、端末を変えてもフリーズ現象が収まらない!
サーバーの処理がデッドロックするというのとはまた違い、キー操作やマウス操作・・・Management Studioそのものがフリーズしまくるのです。
なんやこれは!?
時間がない所でこんな現象に遭遇してしまったので、焦りでもうどうしようもない。
最終手段でサーバーの再起動をしても直らない!!
ともあれ、何とかして原因を突き止めないと自殺ものなので、必死に無い頭を振り絞ると、一つ変な事に気が付きました。
なんか、SELECT INTO文や、INSERT INTO文などで、一時テーブルに値を挿入するとフリーズが始まるような気がする。
いやいや、そんなわけねーわ。
なんで一時テーブルがManagement Studio全体のフリーズに関係しとんの?
とは言え、確かに何回試しても一時テーブルに値を入れた後にフリーズ現象が始まるのに間違いないのです。
これはtempdbがどっかおかしいのか!?
tempdbを圧縮し、DBCC CHECKDB(tempdb)をやってみました。
念のため当該サーバーの全データベースにもDBCC CHECKDBをかけてみました。
異常は無かったのですが、なんと、フリーズがすっかり治りました。
理由は全然分からないけど、とにかく治った!!
それから半日ずっと何ともありません。
なんという事だ・・・。
こんな事があったので、似たような事が起きたらDBCC CHECKDBをやってみましょう!!