データベース ディスク ドライブSQL Serverデフラグ

この記事では、SQL Server データベース ドライブの最適化に関するいくつかのガイダンスを提供します。

元の製品バージョン: SQL Server
元の KB 番号: 3195161

SQL Serverディスクはオペレーティング システムレイヤーで最適化する必要がありますか?

これは、現在のドライブの断片化状態によって異なります。 一般に、データベース ドライブの最適化に関するセクションで説明されている予防措置に従っていると仮定すると、問題SQL Server役立つ場合があります。 唯一のマイナスは、最適化ツールでトランザクション データ機能がサポートされていない限り、SQL Serverをシャットダウンする必要があるということです。 良いニュースは、デフラグを実行した後、多くの自動拡張やその他のファイルがディスクの内外で移動しない限り、もう一度実行する必要はないということです。 ユーティリティが使用する書き込みキャッシュ戦略を理解していることを確認します。 このようなユーティリティによるキャッシュには、バッテリがサポートされていないキャッシュが含まれる可能性があり、これは WAL プロトコルの要件に違反する可能性があります。

詳細

ディスク デフラグツールは、データベース ファイルを含むすべてのファイルをハード ディスク上の連続したクラスターに移動します。 これにより、ファイル アクセスが最適化され、高速化されます。 オペレーティング システムWindows NTを除き、ハード ディスクの最適化を行わないと、オペレーティング システムがディスク上のいくつかの物理的な場所に移動してデータベース ファイルを取得する必要があり、ファイルアクセスが遅くなる可能性があります。

物理データ アクセスは I/O 要求の最もコストの高い部分であるため、最適化により、SQL Serverやその他のアプリケーションのパフォーマンスが向上する可能性があります。 互いに近い位置にデータのチャンクを配置すると、I/O 操作の要件が減ります。

さまざまなデフラグユーティリティは、今日市場で利用可能です。 一部のユーティリティでは、開いているファイルの最適化を有効にしますが、閉じたファイルの最適化が必要なユーティリティもあれば、閉じたファイルの条件下で使用する場合にパフォーマンスが向上するユーティリティもあります。 さらに、一部のユーティリティにはトランザクション機能があるのに対し、そうでないユーティリティもあります。

SQL Serverデータベース ドライブを最適化するときの注意事項

SQL Serverで使用する最適化ユーティリティを評価する場合は、ユーティリティでトランザクション データ機能が提供されていることを確認します。 具体的には、次のトランザクション データ機能を提供する最適化ユーティリティを選択します。

  • 元のセクターは、新しいセクターが正常に確立され、データが正常にコピーされるまで移動されたとは見なされません。

  • ユーティリティは、ファイルを論理的および物理的にそのまま保持する安全な方法で、停電などのシステム障害から保護します。 データの整合性を保証するために、SQL Server ベースのファイルでデフラグ ユーティリティが実行されている場合は、プル ザ プラグ テストを強くお勧めします。

  • Write-Ahead ログ記録 (WAL) プロトコルでは、データ損失を回避するためにセクターの書き換えを防止する必要があります。 ユーティリティは、データ移動を実行している限り、ファイルの物理的な整合性を維持する必要があります。 ユーティリティは、SQL Server ファイルをそのまま維持するために、トランザクションの方法でセクター境界で動作する必要があります。

  • ユーティリティは、ファイルが変更に対して一貫性のあるイメージを保持することを保証するための適切なロック メカニズムを提供する必要があります。 たとえば、ユーティリティは、元のセクターが新しい場所にコピーされるときに変更できないようにする必要があります。 変更が許可された場合、デフラグ ユーティリティは書き込みを失う可能性があります。

これらのトランザクション データ機能を提供しない重要なディスク デフラグツールは、開いているデータベース ファイルを最適化しないように、ディスクを使用するSQL Server インスタンスがシャットダウンされていない限り使用しないでください。

開いているファイルの最適化では、閉じたファイルの最適化では通常は発生しない可能性のあるいくつかの問題が発生します。

  • ファイルを開くデフラグはパフォーマンスに影響します。 最適化ユーティリティによってファイルのセクションがロックされ、SQL Serverが読み取りまたは書き込み操作を完了できなくなる可能性があります。 これは、SQL Serverを実行しているサーバーのコンカレンシーに影響する可能性があります。 最適化ツールの製造元に問い合わせて、ファイルのロック方法と、これがコンカレンシー SQL Serverにどのような影響を与える可能性があるかを確認してください。

  • オープン ファイルのデフラグは、書き込みキャッシュと順序付けに影響する可能性があります。 オープン ファイル ベースのユーティリティには、I/O パス コンポーネントが必要です。これらのコンポーネントは、書き込み操作の順序や意図した性質を変更してはなりません。 書き込みスルーまたは WAL プロトコルのテナントが壊れている場合は、データベースの損傷が発生する可能性があります。 データベースと関連付けられているすべてのファイルは、1 つのエンティティと見なされます。 (これは、多くの Microsoft サポート技術情報の記事、SQL Serverオンライン ブック、およびさまざまなホワイト ペーパーで取り上げられます)。すべての書き込みでは、元の書き込み順序付けシーケンスと書き込みスルー機能を保持する必要があります。

推奨事項

  • 新しいデータベースを作成するか、既存のデータベースをボリュームに移動する前に、フォーマットされていない限り、NTFS ボリュームをデフラグします。
  • データベースが最初に作成されたときに、SQL データファイルとログ ファイルを適切に計画してサイズを設定してください。
  • 使用される場合は、Autogrowth を念頭に置いて、SQL Server前の 2014 トランザクション ログを作成します。
  • トランザクション ログが存在するディスクをデフラグします。 これにより、トランザクション ログの外部ファイルの断片化を防ぐことができます。 この問題は、ファイルの自動拡張が多い場合、または多くのデータベース、ログ、または変更された他のファイルを含む専用ディスクではない場合に発生する可能性があります。 その場合、ファイル (トランザクション ログ ファイルを含む) がインターリーブされ、断片化される可能性があります。
  • クラスター ディスクであるデータベース ドライブを最適化する場合は、正常性監視を中断するようにクラスター ディスクを設定する必要があります ( メンテナンス モードとも呼ばれます)。
  • 断片化を最小限に抑えるには、データベース ファイルを圧縮しないでください。 また、成長アクティビティを最小限に抑えるサイズで手動で拡張します。
  • データベース ファイルを専用ディスクに保持します。
  • データベースとバックアップ ファイルを含む場所を最適化する前に、完全バックアップSQL Server実行します。

関連情報