web-dev-qa-db-ja.com

DBCC CHECKDB、スナップショット、およびSQL Server Standard Editionについて

CHECKDBの実行時にSQL Serverがスナップショットを作成する状況を理解し、これへのリンクをたどりました [〜#〜] kb [〜#〜]

Database snapshots are available only in SQL Server Enterprise.

メンテナンス作業を計画しており、このメンテナンスウィンドウを延長する可能性のある潜在的なI/Oボトルネックを理解する必要があります。

このスナップショットの制限は、SQL Server標準SKUでDBCCコマンドを実行すると常に実際のデータベースに対して実行されることを意味しますか、それとも内部スナップショットが引き続き使用されますか?

4

Paul Randalのブログ( DBCC CHECKDBを作成した人 )を参照してください。

CHECKDB From Every Angle:すべてのCHECKDBステージの完全な説明

SQL Server 2005の場合、CHECKDBは内部データベーススナップショットを使用して、必要なトランザクションの一貫性を提供します。

したがって、SQLDB 2005でCHECKDBが起動すると、最初に行うのは、オンラインで実行できるかどうかです。実行できる場合は、非表示のデータベーススナップショットを作成します。ソースデータベース(つまり、CHECKDBのターゲットデータベース)。データベーススナップショットが非表示になっているため、スナップショットファイルの配置場所を制御できません。実際、スナップショットファイルは、ソースデータベースを構成するファイルの代替ストリームとして作成されます。

SQL Server 2014以降では、データベーススナップショットは既存のデータベースと同じ場所に作成されますが、代替ストリームは使用されません。

補足として、Standardエディションを使用しているため、DBCC CHECKDBしないサーバーインスタンスに構成されたMAXDOP設定を尊重するEnterpriseエディションとは対照的に、オブジェクトの並列チェックを実行します。

また、BOLにはCHECKDBの明確な記述があります 内部データベーススナップショット

2
Kin Shah