Problem
Last week I was installing a SQL Server 2014 standalone instance. I did all the prerequisites and then started installing SQL Server. I did not get any warnings or errors in any of the rules or steps during the SQL Server installation wizard, but I got the below error at the end of the installation:
The following error has occurred: Wait on the Database Engine recovery handle failed. Check the SQL Server error log for potential causes.
I followed each and every pre-check before installing SQL Server, but I still got this issue. In this tip I will show how I went about troubleshooting and fixing this issue.
Solution
After many rounds of troubleshooting I decided to do some research on the web. This was the first time I got this issue, so I had no clue about how to fix except for reading and analyzing the error log files. Interestingly, I found multiple solutions to fix this issue over the internet. Below are three options which can be used to fix this issue. I will explain the first in this tip and the remaining in future tips.
- Fix it by uninstalling SQL Server and then reinstalling
- Fix issue by using sa account
- Fix using by creating a login post installation and connecting to the instance in single user mode
This error comes about because the account which the user selected on the Server Configuration page during installation is somehow not able to bring the SQL Server database engine services online. Either it lacks privileges or it is corrupted. During installation of the database engine services, SQL Server tries to bring online the database services as an internal process, but due to the startup account either being corrupt or not having the appropriate privileges it fails to do so and ultimately the installation fails. There might be a possibility that someone had tried to install SQL Server previously on this machine, but failed to do so and they did not clean the machine properly during the uninstallation.
In this tip I will explain the first method about uninstalling the SQL Server instance which threw this error during installation and then start a fresh install after making a few changes during the setup. We are uninstalling it to clear the machine, so that we will not have any issues during the reinstall.
Here is the install process that failed and how I fixed it.
Step 1: Launch SQL Server setup to kick off the SQL Server installation. Complete all the required details and click the Next buttons to proceed until the last page of the setup window. Click on the install button to start the SQL Server installation.
Step 2: The installation bar will proceed until the end, but the setup will throw the below error during the installation.

When you click on OK button after reading and analyzing the error, the below screen will appear confirming that a few of the features failed to install.

I decided to review the error log file to find out more about this error, but I did not get much from the error log file as shown in the below screen shot.

Step 3: To move forward, I will uninstall this SQL Server instance and then reinstall it again with some minor changes. Let’s go ahead and uninstall it using the “Add/Remove Program” feature in Windows. If you are not able to remove SQL Server instance then you will need to do a manual uninstallation to clean the machine. Make sure to remove all SQL Server related files from the system as well as the registry. Before removing anything from the registry create a backup of the registry first. I uninstalled this instance successfully and proceeded with the next step.
Step 4: Restart your machine after successful removal of the SQL Server instance. Now go ahead and launch the SQL Server setup again to start the SQL Server installation.
Step 5: Fill all the required details and click on Next buttons to proceed until the “Server Configuration” page. You can see below that the SQL Server database engine and SQL Server Agent service account is configured to run with NT Service\MSSQLSERVER and NT Service\SQLServerAgent. Our last installation failed due to this, so here I will change these service accounts to use the local System account to run the installation.

Step 6: We can change both service accounts to local System. On the SQL Server Database Engine and Agent service, click the drop down option to select user NT Authority\SYSTEM which is also known as the local system account as shown below.

Step 7: Now click on the Next button and proceed with the installation by filling in the required details and clicking on the Next buttons until the end of the setup. Installation should now proceed and finish with a green status for all features as you can see in the below screenshot.

Now you can check the SQL Server services to make sure they are running. You can also connect to the database instance and run some queries to check that things are working properly.
Next Steps
- Always follow best practices when installing SQL Server.
- Explore more knowledge on SQL Server Database Administration tips

Manvendra is a passionate database lover currently working as a Technical Architect at one of the top MNCs. He has extensive experience on all versions of SQL Server since 2000 and has built Big Data skills. He has lead projects on the following database features: Database Mirroring, Always ON, Replication, Log Shipping, Geo-Clustering and Performance Tuning and delivered many SQL Server projects on consolidation, upgrades, heterogeneous replication, HA / DR solutions, automation and major performance tuning projects. You can also follow Manvendra on his blog, Twitter, LinkedIn and Facebook.
- MSSQLTips Awards: Champion (100+ tips) – 2018 | Author Contender – 2015-2018, 2021-2022



I was experiencing the same problem as here, switching the accounts during configuration didn’t fix the problem for me though.
Then I found out that there is a problem with how windows 11 handles new disks.
The problem is: These new disk have a sector size greater than 4 KB and SQL server can not handle it.
On systems running Windows 11, some new storage devices and device drivers will expose a disk sector size greater than the supported 4 KB sector size.
When this occurs, SQL Server will be unable to start due to the unsupported file system as SQL Server currently supports sector storage sizes of 512 bytes and 4 KB
original src: https://stackoverflow.com/questions/19538089/wait-on-the-database-engine-recovery-handle-failed-check-the-sql-server-error-l
This is an officially acknowledged problem: https://docs.microsoft.com/en-us/troubleshoot/sql/admin/troubleshoot-os-4kb-disk-sector-size
So basically there are two options:
1. Change the registry key and restart the computer – (note that I’m not aware about any consequences this may have so do this at your own risk, though I think it is safe since Microsoft notes it as a possible solution on their own page).
2. Install SQL Server on a disk that doesn’t use the 4kb disk sector size.
…
thanks but none of what you suggested worked for me…
…here is what worked for me…
There is a new cause for this error on Windows 11 and newer disks. These new disk have a sector size greater than 4 KB and SQL server can not handle it.
Microsoft docs
Cause
During service startup, SQL Server begins the database recovery process to ensure database consistency. Part of this database recovery process involves consistency checks on the underlying filesystem before attempting the activity of opening system and user database files.
On systems running Windows 11, some new storage devices and device drivers will expose a disk sector size greater than the supported 4 KB sector size.
When this occurs, SQL Server will be unable to start due to the unsupported file system as SQL Server currently supports sector storage sizes of 512 bytes and 4 KB
You can confirm that you encounter this specific issue by running the command: Console
fsutil fsinfo sectorinfo
Look for the value PhysicalBytesPerSectorForAtomicity, returned in bytes. A value of 4096 indicates a sector storage size of 4 KB and can cause this issue.
Tested resolution
Command Prompt as Administrator
regedit fix…
script to add key…
REG ADD “HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device” /v “ForcedPhysicalSectorSizeInBytes” /t REG_MULTI_SZ /d “* 4095” /f
script to check key was added…
REG QUERY “HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device” /v “ForcedPhysicalSectorSizeInBytes”
https://stackoverflow.com/questions/19538089/wait-on-the-database-engine-recovery-handle-failed-check-the-sql-server-error-l
always restart the box after a regedit…
…hth…
…
Muchas Gracias, estaba atorado con una instalaciÓn de MSSQL Express 16, Saludos desde Argentina. Un abrazo…!!!
Hello Manvendra!
Thank you so much for your support in this article.
I had an identical problem and I was able to solve the case successfully.
Thank you!
Alex
Hi all!
I had the same problem, but none of this solutions helped me.
I found out that, installation of SQL should be done in English region settings.
Soo… Change Region settings to English (GB), restart PC and during SQL installation select Collation which you want to use.
(SQL installer automatically selects Collation type depending on your OS Region Settings. Double check before proceeding the installation)
BR
Primoz