Solved

How Do I Recover Corrupt WSUS DataStore.edb

Posted on 2007-04-10
4
6,262 Views
Last Modified: 2013-12-05
A bad UPS killed my WSUS installation and I had to reinstall WSUS, including MSDE, to get it running again.  It's working fine now, except I am continually getting the following errors in the machine's application log:
--------------------------------------------------------------------------------------------------------
Event Type:      Error
Event Source:      ESENT
Event Category:      Logging/Recovery
Event ID:      452
Date:            4/10/2007
Time:            4:42:46 PM
User:            N/A
Computer:      WHIRLWIND
Description:
wuaueng.dll (1668) SUS20ClientDataStore: Database C:\WINDOWS\SoftwareDistribution\DataStore\DataStore.edb requires logfiles 13-15 in order to recover successfully. Recovery could only locate logfiles starting at 15.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
--------------------------------------------------------------------------------------------------------
followed by
--------------------------------------------------------------------------------------------------------
Event Type:      Error
Event Source:      ESENT
Event Category:      Logging/Recovery
Event ID:      454
Date:            4/10/2007
Time:            4:42:46 PM
User:            N/A
Computer:      WHIRLWIND
Description:
wuaueng.dll (1668) SUS20ClientDataStore: Database recovery/restore failed with unexpected error -543.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
--------------------------------------------------------------------------------------------------------
The event pair occurs every 30 minutes.  The database in question, DataStore.edb, has not been modified since the problems with the UPS led to its corruption.  The log files it wants are no where to be found, so I'm at a loss how to resolve this.   The files in the log directory are as follows:

03/18/2007  11:28 AM             8,192 edb.chk
04/10/2007  04:42 PM           131,072 edb.log
03/18/2007  11:28 AM           131,072 edb0000D.log
03/18/2007  11:28 AM           131,072 edb0000E.log
03/18/2007  10:29 AM           131,072 res1.log
03/18/2007  10:29 AM           131,072 res2.log
0
Comment
Question by:novumprs
  • 2
4 Comments
 
LVL 14

Accepted Solution

by:
Erik Pitti earned 500 total points
ID: 18886520
WSUS itself is probably fine since it stores its data in SQL, not an ESENT db, the Automatic Updates service on that box is however, hosed.  Here's how to fix automatic updates.

NET Stop WUAUSVC
NET Stop BITS

Rename C:\Windows\SoftwareDistribution to C:\Windows\SoftwareDistribution.old

NET Start WUAUSVC

ADMIN EDIT: "WUAUSERV" per asker request.

Goto Windows Update and download available updates.

0
 

Author Comment

by:novumprs
ID: 18891952
That seems to have done the trick - thanks!!

One minor note: on my W2K3 server, the update service is WUAUSERV vice wuausvc.
0
 
LVL 14

Expert Comment

by:Erik Pitti
ID: 18894631
Thanks. Re-posting with corrected service names:


WSUS itself is probably fine since it stores its data in SQL, not an ESENT db, the Automatic Updates service on that box is however, hosed.  Here's how to fix automatic updates.

NET Stop WUAUSERV
NET Stop BITS

Rename C:\Windows\SoftwareDistribution to C:\Windows\SoftwareDistribution.old

NET Start WUAUSERV


Goto Windows Update and download available updates.
0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Why is this different from all of the other step by step guides?  Because I make a living as a DBA and not as a writer and I lived through this experience. Defining the name: When I talk to people they say different names on this subject stuff l…
This article explains how to reset the password of the sa account on a Microsoft SQL Server.  The steps in this article work in SQL 2005, 2008, 2008 R2, 2012, 2014 and 2016.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Viewers will learn how to use the INSERT statement to insert data into their tables. It will also introduce the NULL statement, to show them what happens when no value is giving for any given column.

896 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now