現在オフラインです。再接続するためにインターネットの接続を待っています

データベース操作で完了するには時間がかかる、またはトランザクション ログに多数の仮想ログ ファイルがあるときにエラーが発生します。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:2028436
現象
SQL Server 2008 環境で以下の現象が発生する可能性があります。
  • 1 つまたは複数のデータベースには、SQL Server の起動中に回復を完了するのには非常に長い時間がかかります。
  • データベースの復元を実行すると、完了までに時間がかかります。
  • データベースのアタッチを試行では、完了するのには非常に長い時間がかかります。
  • データベース ミラーリングをセットアップしようとすると、発生するエラー メッセージ 1413年、1443年および 1479、タイムアウトを示します。
  • 701 と同じようにメモリ関連のエラーが発生するデータベースを復元しようとしたとき。

SQL Server エラー ログを調べると、データベースのリカバリ ・ プロセスの分析段階の前にかなりの時間が費やされることに注意してください。
2010-05-08 14:42:38.65 spid22s データベース 'lot_of_vlfs' を起動します。
2010-05-08 14:46:04.76% 完了 0 は、データベース 'lot_of_vlfs' (16) の spid22s 分析 (約 0 秒のままです)。3 のフェーズ 1 にします。これは、情報メッセージのみです。ユーザーの操作は必要ありません。

原因
データベースのリカバリ ・ プロセスの初期段階で、SQL Server はすべての仮想ログ ファイルにすべてのトランザクション ログ ファイルの検出を実行します。すべての仮想ログ ファイルの一覧が作成されます。このプロセスによっては、特定のデータベース内の仮想ログ ファイルの数によって非常に長い時間がかかります。データベースになる可能性が仮想ログ ファイルの数が多い場合は、トランザクション ・ ログが発生した頻繁に自動拡張成長の非常に小さなサイズの単位に発生するいるとします。

通常の仮想ログ ファイルの数は、数十万の範囲内と、「現象」に記載されている問題が発生するを起動します。
解決方法
仮想ログ ファイルの数を特定のデータベースで検索するのには次のブログからのメソッドを使用できます。
ログ ファイルの構造がデータベースの復旧時間に影響を与える

10,000 などの適切な数の下にある仮想ログ ファイルの合計数を保持する必要があります。

次のメソッドを使用して、仮想ログ ファイルの数には制限が含まれているトランザクション ログ ファイルを再構成することができます。
  1. トランザクション ログ ファイルを圧縮、TSQL の ALTER DATABASE を使用して手動で必要なサイズまでファイルを拡張する<database name="">ファイルの変更 (名前 'のトランザクションの論理ファイル名をログに記録'、サイズ = = <required size="">)</required> </database>
  2. トランザクション ・ ログ ・ ファイルを再構築し、サイズが必要なトランザクション ログ ファイルを手動で拡張します。
    1. データベースがクリーンに (ないユーザーまたは開いているトランザクション) でシャット ダウンした場合は、新しいトランザクション ログ ファイルを作成するデータベースの作成の FOR ATTACH_REBUILD_LOG のオプションを使用することができます。
    2. 場合は読み取り/書き込みデータベースが単一のログ ファイルは現在利用できませんが、データベースがシャット ダウンされた場合、アタッチ操作、データベースの作成のオプションを接続する前に [ユーザーまたは開いているトランザクションはありません] とクリーンアップを自動的には、ログ ファイルを再構築し、プライマリ ファイルを更新します。

確認しに必要な変更をトランザクション ・ ログ ・ ファイルのレイアウトを再構成した後、自動拡張、将来的に同じ問題を回避するのにはトランザクション ・ ログ ・ ファイルに設定します。

注: <b>これらの操作を実行する前に、後でいくつかの問題が発生した場合に有効なリストア可能なバックアップがあることを確認します。

2524743 FIX の復旧は、データベースを SQL Server 2008 または SQL Server 2008 R2 環境の予想よりも長くなります。

2455009 SQL Server 2005、SQL Server 2008 または SQL Server 2008 R2 では、トランザクション ログ内の多くの Vlf がある場合にデータベースをリカバリすると、修正プログラム: パフォーマンスが低下

2653893 修正: SQL Server 2008 R2 のデータベースを復元するのには長い時間がかかります

979042 FIX プリンシパル データベースは回復されません SQL Server 2005 または SQL Server 2008 で、データベースには多数の仮想ログ ファイルの場合

2882905 9017 情報メッセージが SQL Server のインスタンスを開始または復元またはデータベースをアタッチしたときに記録されます。

詳細
仮想ログ ファイルの詳細については、次のオンライン ブックのトピックを参照してください。 トランザクション ログの物理アーキテクチャ

この問題の詳細については、次を参照してください。

ログ ファイルの構造がデータベースの復旧時間に影響を与える
トランザクション ログ Vlf が多すぎるか少なすぎるでしょうか。
1413 エラーがデータベース ミラーリング: どのように多くの仮想ログ ファイルを開始するときは、多すぎるでしょうか。

トランザクション ログの増加に関する既知の問題を認識できます。

2633151 SQL Server データベースのトランザクション ログ ファイルが構成ファイルの増加値まで拡張しない

注: <b>SQL Server の 2014 年の VLF の作成アルゴリズムの重要な変更について学習します。


製品または SQL Server 製品のバージョンと SQL Server のインスタンスでは、この条件を自動的にチェックするツールの詳細については、次の表を参照してください。

ルールのソフトウェアルールのタイトル仕訳ルールの説明ルールの評価対象となる製品のバージョン
SQL Server 2008 R2 ベスト プラクティス アナライザー (SQL Server 2008 R2 BPA)




ある VLF の数が多いデータベース





SQL Server 2008 R2 ベスト プラクティス アナライザー (SQL Server 2008 R2 BPA) は、データベースに多数仮想ログ ファイルにはが含まれている状況を検出するルールを提供します。SQL Server 2008 R2 BPA は、SQL Server 2008 と SQL Server 2008 R2 の両方をサポートします。

BPA ツールを実行し、データベース エンジンのデータベース、VLF の数が多いとのタイトルのエラーが発生する場合は影響を受けるデータベース用の仮想ログ ファイルの数を確認し、トランザクション ・ ログ ・ ファイルを再構成する必要があります。
SQL Server 2008
SQL Server 2008 R2






SQL Server 2012 のベスト プラクティス アナライザー (SQL Server 2012 BPA)



ある VLF の数が多いデータベース




SQL Server 2012年ベスト プラクティス アナライザー (SQL Server 2012 BPA) は、データベースに多数仮想ログ ファイルにはが含まれている状況を検出するルールを提供します。

BPA ツールを実行し、データベース エンジンのデータベース、VLF の数が多いとのタイトルのエラーが発生する場合は影響を受けるデータベース用の仮想ログ ファイルの数を確認し、トランザクション ・ ログ ・ ファイルを再構成する必要があります。
SQL Server 2012








警告: この記事は自動翻訳されています

プロパティ

文書番号:2028436 - 最終更新日: 08/05/2015 20:28:00 - リビジョン: 6.0

Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbmt KB2028436 KbMtja
フィードバック