web-dev-qa-db-ja.com

SQL Server 2005 CheckDB - スナップショットファイル用の余地なし

私は8つのデータファイルを持つ2TB + SAPデータベースを持っています、最初のファイルは私たちのHP EVA5000上の利用可能なディスク容量を埋めるように成長し、そして今や新しいファイルになりました。 SQL Server 2000から2005年にSQLをアップグレードし、CheckDBは異なる動作で動作し、スナップショットを作成するためのスペースなしで失敗します。新しいI/Oサブシステムを把握している間、TEMPORARY測度として各ファイルに50GBを追加しました。質問は次のとおりです。どのようにスナップショット使用量を監視できますか? CheckDBが今すぐ開始されたらどうなります。そしてあなたがスペースを使い果たしているのを見るのを見るなら、checkdbをキャンセルできますか?

2
user16479

Ooh私はちょうどこの昨夜のSQL Server 2008 Internals Book(Paul Randalありがとう)を読んでいます。スペースがなくなると、スナップショットが削除されます。私がSQL 2005以降にあることを意味するのは、内部エンジンは実際にシーンの後ろにスナップショットを作成し、それに対してcheckdbを実行しています。このスナップショットにアクセスできませんが、あなたの目に見えないがファイルシステム上のスペースを占有することはできません。このシステムスナップショットを作成するのに十分なスペースがない場合は、エラーをスローしてそのスナップショットをロールバックします。

あなたができることは、十分なスペースを持つ別のボリューム上のデータベースのスナップショットを手動で作成し、それに対してcheckdbを実行します。スナップショットは単にベースデータに対するページ変更の違いのコレクションのコレクションであるため、結果は有効であるはずです。私はポールがこれより極めて答えることができたと確信していますが、これはその基本的な要旨です。

また、実行中のCheckDBクエリをキャンセルできます。

3
SQLChicken

あなたの質問に答えるPaul's Blogのこの記事を見てください:

http://www.sqlskills.com/blogs/paul/post/checkdb-from-every-angle-would-checkdb-run-out-of-space.aspx

1
SuperCoolMoss