Monday, July 3, 2023

SQL Server 2014 installation issues on Windows 10, etc.

 You're installing SQL Server 2014 (because it's the last 32-bit SQL)

You can't get SQL services to run and get an error like:

Operating system error 2(The system cannot find the file specified.) occurred while creating or opening file 'E:\sql12_main_t.obj.x86Release\sql\mkmastr\databases\mkmastr.proj\modellog.ldf'. Diagnose and correct the operating system error, and retry the operation.

This is firstly because of TLS 1.0 not being enabled because of security. And because of that, the installation of the instance goes awry.

Your options are to enable TLS 1.0 or upgrade SQL Server 2014 to a more recent cumulative update. (You'll still want to apply the latest cumulative update for SQL Server 2014 to enable TLS 1.2 support, or else you'll have to enable TLS 1.0 every reboot). You don't  want to enable TLS 1.0 permanently as this is not secure for your system, and if it's enabled and in use, is as secure as plain text. 

https://support.microsoft.com/en-us/topic/kb2936603-sql-server-2014-build-versions-6f75da99-d86f-53fa-23ce-3d2b4825eccb

Make sure to choose the SQL Server 2014 SP Cumulative Update for your environment. They are not interchangeable. They won't cross upgrade instances on different Service Packs. You must download and install each Cumulative Update (CU) for each SP instance. As it's a Cumulative Update, you can typically install the latest/most recent Cumulative Update for each Service Pack regardless of the current Cumulative Update installed. (Back up your system prior to applying any updates. Your data is your responsibility).

For information on enabling TLS 1.0 

https://learn.microsoft.com/en-us/windows-server/security/tls/tls-registry-settings?tabs=diffie-hellman

HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server
Enabled: 1

HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client
Enabled: 1

Just make sure TLS 1.0 is enabled prior to installing a fresh SQL Server 2014 instance. Once the CU has been applied, TLS 1.0 should no longer be necessary to enable for the instance to start after reboot.
gh

Blog Archive