Advertisements
Home > SQL Bootstrap Errors, Troubleshooting > The Database Engine system data directory in the registry is not valid

The Database Engine system data directory in the registry is not valid

Recently I was helping a client with this issue; they were trying to repair their instances due to some registry setting issues.  However kept getting this message; this error message in the Bootstrap Logs means one of the key parameters for setup are missing or incorrect.  So in your setup logs you might have error similar to below:

(01) 2014-10-17 12:34:38 Slp: Configuration action failed for feature SQL_Engine_Core_Inst during timing Validation and scenario Validation.

(01) 2014-10-17 12:34:38 Slp: Microsoft.SqlServer.Configuration.SqlConfigBase.ValidationStateException: The Database Engine system data directory in the registry is not valid. —> Microsoft.SqlServer.Configuration.SqlEngine.RepairException: The Database Engine system data directory in the registry is not valid.

(01) 2014-10-17 12:34:38 Slp:    — End of inner exception stack trace —

(01) 2014-10-17 12:34:38 Slp:    at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.ValidateMergedSettings(EffectiveProperties properties)

(01) 2014-10-17 12:34:38 Slp:    at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.RepairCorruptInstance(ConfigActionTiming timing, Dictionary`2 actionData, PublicConfigurationBase spcb)

(01) 2014-10-17 12:34:38 Slp:    at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.ExecuteAction(String actionId)

(01) 2014-10-17 12:34:38 Slp:    at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.Execute(String actionId, TextWriter errorStream)

(01) 2014-10-17 12:34:38 Slp: The following is an exception stack listing the exceptions in outermost to innermost order

(01) 2014-10-17 12:34:38 Slp: Inner exceptions are being indented

(01) 2014-10-17 12:34:38 Slp: 

(01) 2014-10-17 12:34:38 Slp: Exception type: Microsoft.SqlServer.Configuration.SqlConfigBase.ValidationStateException

(01) 2014-10-17 12:34:38 Slp:     Message: 

(01) 2014-10-17 12:34:38 Slp:         The Database Engine system data directory in the registry is not valid.

(01) 2014-10-17 12:34:38 Slp:     HResult : 0x851a0042

(01) 2014-10-17 12:34:38 Slp:         FacilityCode : 1306 (51a)

(01) 2014-10-17 12:34:38 Slp:         ErrorCode : 66 (0042)

(01) 2014-10-17 12:34:38 Slp:     Data: 

(01) 2014-10-17 12:34:38 Slp:       SQL.Setup.FailureCategory = ConfigurationValidationFailure

(01) 2014-10-17 12:34:38 Slp:       WatsonConfigActionData = REPAIR@VALIDATION@SQL_ENGINE_CORE_INST

(01) 2014-10-17 12:34:38 Slp:       WatsonExceptionFeatureIdsActionData = System.String[]

(01) 2014-10-17 12:34:38 Slp:     Stack: 

(01) 2014-10-17 12:34:38 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.ValidateMergedSettings(EffectiveProperties properties)

(01) 2014-10-17 12:34:38 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.RepairCorruptInstance(ConfigActionTiming timing, Dictionary`2 actionData, PublicConfigurationBase spcb)

(01) 2014-10-17 12:34:38 Slp:         at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.ExecuteAction(String actionId)

(01) 2014-10-17 12:34:38 Slp:         at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.Execute(String actionId, TextWriter errorStream)

(01) 2014-10-17 12:34:38 Slp:     Inner exception type: Microsoft.SqlServer.Configuration.SqlEngine.RepairException

(01) 2014-10-17 12:34:38 Slp:         Message: 

(01) 2014-10-17 12:34:38 Slp:                 The Database Engine system data directory in the registry is not valid.

(01) 2014-10-17 12:34:38 Slp:         HResult : 0x851a0042

(01) 2014-10-17 12:34:38 Slp:                 FacilityCode : 1306 (51a)

(01) 2014-10-17 12:34:38 Slp:                 ErrorCode : 66 (0042)

Its easy to resolve please go and verify following settings are correct:

  1. Run regedit.exe
  2. Navigate to [HKLM]\Software\Microsoft\Microsoft SQL Server\MSSQL.InstanceID\Setup\
  3. Look for a String Key, SQLDataRoot.  The value should be where the System Data, Log, etc. folders are.  For example, its D:\MSSQL10.SQLInstance\MSSQL\

If setting isn’t there add it, if the path is incorrect fix it and run your setup/repair/upgrade again.

Advertisements
  1. January 27, 2016 at 7:33 am

    Thanks for the assist, worked like a charm

    • January 27, 2016 at 8:03 am

      Thanks for feedback. Glad it helped :).

  2. jpratt
    October 2, 2017 at 1:51 pm

    Just hit this issue with a SQL Server 2016 Enterprise instance, trying to install a CU after installing Power BI Report Server. I first uninstalled SSRS and still got the same error. Found this article and boom, there it was. The SQL 2016 instance has been upgraded in place from 2012 to 2014 to 2016. Never had this issue before, including at any time in the last 20 years of working with SQL Server. Worked like a champ!

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: