Error Starting SQL Server 2017 Service – Error Code 3417 (Code Page 65001 Fix)

This was already the third time I had to uninstall and reinstall SQL Server 2017 Developer Edition on my local machine.

Everything worked fine for a few days. Then suddenly the service refused to start with:

Cannot recover the master database. SQL Server is unable to run. Restore master from a full backup, repair it, or rebuild it. For more information about how to rebuild the master database, see SQL Server Books Online.

Error Code 3417 – The Symptom

I tried everything:

  • Checking permissions on master.mdf
  • Security changes
  • Service account verification
  • Full uninstall and reinstall

Nothing worked.

Then I checked the SQL Server error log more carefully and noticed this line appearing before the main failure:

Error: 2775, Severity: 17, State: 12.
The code page 65001 is not supported by the server

The Plot Twist

I went to Google and found this article.

The author basically talked with himself — logs, screenshots, assumptions, theories — debugging in public.

And then, at the very bottom, almost casually, he wrote:

Uncheck Beta: Use Unicode UTF-8 for worldwide language support in Control Panel → Region → Administrative → Change System Locale and restart the computer. This solved my problem. As @Shanky stated in his answer this seems to be a bug.

The 5-Second Fix

  1. Open Control Panel
  2. Go to Region
  3. Open the Administrative tab
  4. Click “Change system locale”
  5. Uncheck Beta: Use Unicode UTF-8 for worldwide language support
  6. Restart the computer

That’s it.

After hours of reinstalling SQL Server and mentally preparing to rebuild the master database, the fix took five seconds.

Conclusion

If you see:

  • Error 3417
  • Cannot recover the master database
  • Code page 65001 not supported

Check the Windows UTF-8 beta locale option before doing anything destructive.

Damn you, Microsoft.

Five-second solution after many hours of suffering from malfunction of my main development tool — all because of a “beta” checkbox.

Damn you, Microsoft, again.

And yes… there were many very expressive comments in Russian at that moment.

Comments

Popular posts from this blog

Shrinking node_modules for AWS Lambda (My First “npm shock” and a Practical Fix)

Decimal number issue from server to client. Wow! Didn't expect this @_@