32.4GBの攻防戦(情報元のブックマーク数)

うきゃぁー50GBのディスクの33GBもデータベースファイルが使ってる!!!?

それは開発用サーバーのSQLServer2005で、ちょっと前から困っていたことのお話。

問題:ディスクは50GBしかないのに、msdbが33GBもある。そのせいで、テストモジュールを最低限まで削ってもテスト動かすとすぐに残り容量100MB以下に。うーん、でいんじゃらす。

なので、ちょっと本気を出して、msdbの圧縮について、対処することにした。

まずは原因となっているだろうテーブルの洗い出し。

32.4GBの攻防戦→訂正→32.994GBの攻防戦

ServiceBrokerってので、色々テストしたさいのごみ?!

問題のテーブルは sysxmitqueue

ServiceBroker の処理キューを貯めておくところなんだけどどうやら未処理のままデータを溜め込んでいるらしい。そういや、このサーバーでBrokerのテストしたことあったなー。って、ずいぶん前だな、、つか、そのせいかorz

なので、さくっとBroker再構築

32.4GBの攻防戦→訂正→32.994GBの攻防戦

ほへ?!6MB!!!!てか、なんだ!?ごみだらけだったとwwwwwwwwwwww

で、その後、msdbを圧縮。おおっ!33GB→6MBに!

ディスクが空いた。一安心w

32.4GBの攻防戦→訂正→32.994GBの攻防戦

screenshot