Windows Internal Database Stuck Starting

The Problem

Recently, one of our engineers was working on a Windows Server 2012R2 VM with Remote Desktop Services deployed. The RDS portion of the server was inaccessible, internally and externally. The server was up, but the RDS services would not start.

Upon further investigation, it was determined that the Windows Internal Database service was unable to finish starting. Given that it was in a “Starting…” state, it could not be interacted with via services.msc. Depending on your configuration, quite a few different services might be dependent on it, so trouble with WID is trouble indeed.

Documentation for the ‘repair’ of the Windows Internal Database was lacking, and most search results led me down paths related to WSUS. That’s not the case here, so if you’ve made it this far and your issue is related to WID and WSUS, this is not the blog post you’re looking for. If, however, you have an environment IN GENERAL where the Windows Internal Database service will not start for you, it’s log files are not helpful, and starting and stopping the service simply repeats the result, we may have the solution for you.

The Solution

Chkdsk.

That’s right – good ol’ chkdsk. They ran SFC /scannow, and no problems reported there. Since the server was booting up, they did not spend much time exploring DISM related solutions. The server in question had patch maintenance done regularly, and standard monitoring was in place. At no point recently had chkdsk ran. It was simply patching and rebooting as needed without concern. Until it wasn’t.

Once we began to investigate the possibility of restoring from backup, we decided to first verify the drive integrity and that is where chkdsk, in the form of “chkdsk /f” worked it’s magic. It made some repairs to the volume, and at next boot, the Windows Internal Database was running once again.

There you have it – if Windows Internal Database is stuck starting, and the logs don’t indicate any standard type of problem (file not found,access denied,etc.) – then run chkdsk. Once you’ve done that, if it hasn’t started still, break out sysinternals. But maybe, just maybe, this blog post will help someone from spinning their wheels.

Showing 4 comments
  • Seb
    Reply

    Hi.. it definitively helped me this morning 🙂
    thanks a lot.. would probably not have thought of that, we were about to setup a new rds broker, to stop loosing time ^^

    • John
      Reply

      I’m very glad to hear it!

  • James
    Reply

    You’re are a lifesaver!

    We’ve been battling this intermittently for months with a 2012 R2 server that is running our RDS connection broker.

    chkdsk… who knew?!

    • John
      Reply

      James,

      Glad the post was helpful for you!

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Start typing and press Enter to search