マイクロソフトでは、Microsoft SQL Server 2008 Service Pack 2 (SP2) の修正プログラムを 1 つのダウンロード可能なファイルとして配布しています。 修正は累積的であるため、各新しいリリースには、以前の SQL Server 2008 SP2 更新プログラム リリースに含まれていたすべての修正プログラムとすべてのセキュリティ更新プログラムが含まれています。
現象
たとえば次のようなシナリオを考えてみます。
SQL Server 2008、SQL Server 2012、または SQL Server 2014 のインスタンスでデータベースのAUTO_CLOSEオプションを有効にします。
データベースのオブジェクトに対する 1 つ以上の不足しているインデックス エントリが、不足しているインデックス動的管理ビューにあります。
このデータベースに対して行われたすべての接続が閉じられます。
注: すべての接続が閉じられると、データベースは自動的に閉じられます。
同時に、バックグラウンド クリア操作のタスクは、欠落しているインデックス エントリを削除しようとします。 タスクを実行するスレッドが、データベースを閉じるスレッドと同じではありません。
このシナリオでは、アクセス違反が発生します。 さらに、この問題を解決するには、SQL Server のインスタンスを再起動する必要があります。
原因
この問題は、バックグラウンド クリア操作の不足しているタスクが不足しているインデックス エントリを削除しようとしたときに、free メソッドに対して複数の呼び出しが行われるために発生します。
解決策
この問題は、次の SQL Server の累積的な更新プログラムで最初に修正されました。
SQL Server 2014 SP1 の累積的な更新プログラム 1 /en-us/help/3067839
SQL Server 2014 用の累積的な更新プログラム 8 /en-us/help/3067836
SQL Server 2012 SP2 用の累積的な更新プログラム 6 /en-us/help/3052468
SQL Server 2008 SP2 の累積的な更新プログラム 7 /en-us/help/2617148
SQL Server 用の累積的な更新プログラムについて
SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正プログラムが含まれています。 SQL Server の最新の累積的な更新プログラムを確認してください。
- SQL Server 2014 SP1 の最新の累積的な更新プログラム
- SQL Server 2014 の最新の累積的な更新プログラム
- SQL Server 2012 SP2 の最新の累積的な更新プログラム
- SQL Server 2008 SP2 の最新の累積的な更新プログラム
状態
Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。
回避策
この問題を回避するには、データベースの AUTO_CLOSE オプションを無効にします。