Bug #94168 MySQL Server 8.0.14 install errors from missing SSLEAY32.dll
Submitted: 1 Feb 2019 15:12 Modified: 4 Apr 2019 11:33
Reporter: Leith Tussing Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Installing Severity:S3 (Non-critical)
Version:8.0.14/8.0.15 OS:Windows
Assigned to: CPU Architecture:x86

[1 Feb 2019 15:12] Leith Tussing
Description:
MySQL Server 8.0.14 Community
Windows Server 2012 R2
CIS Level 1 security configuration

Fresh installation of MySQL Server 8.0.14 with no previous version and when it gets to the configuration step and tries to initialize the mysqld.exe for the first time it errors with a popup.

mysqld.exe system error 
The program can't start because ssleay32.dll is missing from your computer.

MySQL Installer Log

Beginning configuration step: Initializing Database
Attempting to run MySQL Server with --initialize-insecure option...
Starting process for MySQL Server 8.0.14...
Starting process with command: D:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe --defaults-file="E:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --console --initialize-insecure=on --lower-case-table-names=1...
Process for mysqld, with ID 9244, was run successfully and exited with code -1073741515.
Failed to start process for MySQL Server 8.0.14.
Database initialization failed.
Ended configuration step: Initializing Database

Windows Debug Log

Problem signature:
  Problem Event Name:	APPCRASH
  Application Name:	mysqld.exe
  Application Version:	8.0.14.0
  Application Timestamp:	5c1c096e
  Fault Module Name:	SSLEAY32.dll
  Fault Module Version:	6.3.9600.19153
  Fault Module Timestamp:	5b93ffa7
  Exception Code:	c0000135
  Exception Offset:	00000000000ecf30
  OS Version:	6.3.9600.2.0.0.272.7
  Locale ID:	1033
  Additional Information 1:	ac05
  Additional Information 2:	ac0507478d1c5bd693cfc4fe3987e900
  Additional Information 3:	ac05
  Additional Information 4:	ac0507478d1c5bd693cfc4fe3987e900

Logs from Process Monitor show it looking for SSLEAY32.dll but it doesn't exist.  Going to the folder structure validates it doesn't exist.

mysqld.exe	9244	QueryOpen	D:\Program Files\MySQL\MySQL Server 8.0\bin\SSLEAY32.dll	NAME NOT FOUND	

How to repeat:
Install MySQL with the "Development Components" unchecked and the installation will be missing SSLEAY32.dll and libeay32.dll from the bin folder.

Suggested fix:
If SSLEAY32.dll is a required dll for the core mysqld.exe to run it should not be excluded from the base software installation as a Development Component.
[2 Feb 2019 19:44] MySQL Verification Team
Thank you for the bug report. I couldn't repeat this issue on Windows 10 Pro, please try to re-install or check your environment for example for some anti-virus issue:

C:\Program Files\MySQL\MySQL Server 8.0\bin>dir ssleay32.dll
 Volume in drive C has no label.
 Volume Serial Number is 7442-72F5

 Directory of C:\Program Files\MySQL\MySQL Server 8.0\bin

11/27/2018  02:07 PM           357,376 ssleay32.dll
               1 File(s)        357,376 bytes
               0 Dir(s)  109,682,675,712 bytes free

C:\Program Files\MySQL\MySQL Server 8.0\bin>

Also try to install 8.0.15.
[5 Feb 2019 18:21] Leith Tussing
I will download 8.0.15 and retest with that version as well as test on another system we have.
[20 Feb 2019 22:52] MySQL Verification Team
Please comment here when 8.0.15 was checked. Thanks.
[28 Feb 2019 17:33] Dan Hi
I have tested 8.0.15 and the bug exists there as well.  Did anyone try anything to fix the bug, or was this just finger-crossing?
[28 Feb 2019 17:42] Dan Hi
The original comments correctly identify the issue.  If the "development" options are unchecked, the required libraries are not installed, and the installer crashes complaining that "libeay32.dll" is not installed. At that point the installer cannot remove or update the installation.  However, you can remove from "add/remove" programs and restart the installer.

If the server cannot be installed (or perhaps configured?) without the "development" options checked, it should not be optional to install the dev components.

Either that or have it install those two libraries when doing a minimal server install.
[28 Feb 2019 18:11] Leith Tussing
I can confirm that 8.0.15 behaves the same for me.  Uncheck the Development Components and the required DLLs are not installed which results in the rest of the configuration steps post installing failing.
[28 Feb 2019 19:23] MySQL Verification Team
Thank you for the feedback.
[4 Apr 2019 11:33] Paul DuBois
Posted by developer:
 
Fixed in 5.6.45, 5.7.27, 8.0.17.

MySQL Installer did not install OpenSSL DLL dependencies if the
Development comnponent was not selected.
[8 Aug 2019 18:10] Sasha Unspecified
Should reopen it.
It still happens for me when I try to install (configure) 8.0.17 under Windows 7 (but after installing Development Components it succeeds).
So, not really fixed in 8.0.17.
[8 Aug 2019 18:13] Sasha Unspecified
Oh, I forgot to say (if it matters) — my architecture is 64-bit.
I've (first) installed MySQL Server, Client Programs and Connector/ODBC (all 8.0.17 and 64-bit).
[12 Sep 2019 15:37] Paul DuBois
Posted by developer:
 
In 8.0, the problem is not fixed until 8.0.18. See Bug#96573.