量産メモ帳

忘れっぽいのでメモを残しています。浅く適当に書きます。

SQL Server 2005 SP2 セキュリティ更新プログラム(KB970895)インストール失敗。

スポンサーリンク

SQL Server 2005 をアンインストールしたのに、Windows Update で何故か KB970895 のインストールを促され、インストールしようとすると失敗してしまう。


最後に実行したのは、以下の Fix it である。



元々、Windows Installer Cleanup (MSICUU2.exe) というツールがあったようだが、上述の Fix it に取って代わられたようだ。



ところで、KB970895 をインストールしようとした時のログは、以下のファイルに出力されていた。

C:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Hotfix\SQL9_Hotfix_KB970895_sqlrun_sql.msp.log



このファイルの中を見ると、xmlrw.dll ファイルに問題があることが分かる。


エラー 29527。 データ ストアで予期しないエラーが発生しました。アクション: RestoreSetupParams、
エラー: Source File Name: datastore\cachedpropertycollection.cpp
Compiler Timestamp: Tue Dec 2 14:05:42 2008
Function Name: CachedPropertyCollection::findProperty
Source Line Number: 138

                                                                                                                  • -

Failed to read property "InstallIds" {"MachineConfiguration", "", "WHITEBASE"} from cache
Source File Name: datastore\cachedpropertycollection.cpp
Compiler Timestamp: Tue Dec 2 14:05:42 2008
Function Name: CachedPropertyCollection::setProperty
Source Line Number: 164
----------------------------------------------------------
Unable to write property into cache: IsClustered
Source File Name: datastore\datastorecacheschema.cpp
Compiler Timestamp: Tue Dec 2 14:05:43 2008
Function Name: DataStoreCacheSchema::writeProperty
Source Line Number: 115
----------------------------------------------------------
Unable to write property into cache: "IsClustered"
Source File Name: datastore\datastorecachexmlschema.cpp
Compiler Timestamp: Tue Dec 2 14:05:43 2008
Function Name: DataStoreCacheXMLSchema::initScopeRecord
Source Line Number: 81
----------------------------------------------------------
XmlRW Error: Failure loading xmlrw.dll
Source File Name: datastore\datastorecachexmlschema.cpp
Compiler Timestamp: Tue Dec 2 14:05:43 2008
Function Name: DataStoreCacheXMLSchema::initScopeRecord
Source Line Number: 80
----------------------------------------------------------
CheckAllProcedures() returned: 2



この xmlrw.dll ファイルは SQL Server のインストールディレクトリツリーの中にあるのだが、そもそもこのファイルも含む多くのファイルが、SQL Server のアンインストール後も残っていた。


どうも、SQL Server のアンインストールプログラムが今一つの出来のようで、これがそもそもの原因のようだ。



ちなみに、MSXML6 SP2 が悪さしているという記事も見かけたが、私の PC には MSXML6 SP2 はインストールされていなかったので、別問題っぽい。



また、KB970895 を直接ダウンロードしてインストールしてみたが、それも駄目だった。



2012/11/29 追記:
PC を再起動してみたが、やっぱり Windows Update でインストールを促されてしまった。
しかし、レジストリに削除し損ねたエントリが残っているという以下の記事を見かけたので、、

CCleaner の「レジストリ」の各項目を以下のようにチェックして、、

「問題点をスキャン」→「問題点を解決」した後、PCを再起動したら、インストールを促されることはなくなった。