I am installing MySQL 8.0.37 to make a WoW server with AzerothCore following the installing guide but when I reach the step "Apply Configuration" in the MySQL configuration installer it always stops at "Starting Server"
After checking the log I’ve found this line: root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
It is probable that this is the cause but I have no idea as to how to fix it because I DID input my password when asked about it in the configuration.
My installation steps are exactly as follows:
1.Installed it with "mysql-installer-community-8.0.37.0" (I’ve tried both this version and the web version with the exact same steps and neither worked)
2.Choosing a Setup Type -> Server Only (Default)
3.Next -> Execute -(ready to configure) -> Next
4.Config type: Development Computer, all defaults (TCP/IP, Port: 3306, Open firewall)
5.Authentication Method: Use Strong Password Encryption for Authentication (Default)
6.Typed in MySQL Root Password (Which includes only numbers and letters both upper and lower case but NO special characters)
7.MySQL user Accounts -> Add user (All Hosts (%), DB Admin, Username, Password, OK) -> Next
8.Configure MySQL Server as a Windows Service (CHECKED) -> Windows Service Name: MySQL80 (default) -> Start the MySQL Server at System Startup (CHECKED) -> Run Windows Service as … Standard System Account (CHECKED) (All Default)
9.Server File Permissions -> Yes, grant full access to the user running the Windows Service (Default)
10.Apply Configuration -> Execute -> Failed Starting the server (The configuration for MySQL Server 8.0.37 has failed. You can find more information about the failures in the ‘Log’ tab)
LOG TAB:
Beginning configuration step: Writing configuration file
Saving my.ini configuration file...
Saved my.ini configuration file.
Ended configuration step: Writing configuration file
Beginning configuration step: Updating Windows Firewall rules
Adding a Windows Firewall rule for MySQL80 on port 3306.
Attempting to add a Windows Firewall rule with command: netsh.exe advfirewall firewall add rule name="Port 3306" protocol=TCP localport=3306 dir=in action=allow
Ok.
Successfully added the Windows Firewall rule.
Adding a Windows Firewall rule for MySQL80 on port 33060.
Attempting to add a Windows Firewall rule with command: netsh.exe advfirewall firewall add rule name="Port 33060" protocol=TCP localport=33060 dir=in action=allow
Ok.
Successfully added the Windows Firewall rule.
Ended configuration step: Updating Windows Firewall rules
Beginning configuration step: Adjusting Windows service
Attempting to grant the required filesystem permissions to the 'NT AUTHORITYNetworkService' account.
Granted permissions to the data directory.
Adding new service
New service added
Ended configuration step: Adjusting Windows service
Beginning configuration step: Initializing database (may take a long time)
Attempting to run MySQL Server with --initialize-insecure option...
Starting process for MySQL Server 8.0.37...
Starting process with command: C:Program FilesMySQLMySQL Server 8.0binmysqld.exe --defaults-file="C:ProgramDataMySQLMySQL Server 8.0my.ini" --console --initialize-insecure=on --lower-case-table-names=1...
C:Program FilesMySQLMySQL Server 8.0binmysqld.exe (mysqld 8.0.37) initializing of server in progress as process 24652
InnoDB initialization has started.
InnoDB initialization has ended.
root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
Process for mysqld, with ID 24652, was run successfully and exited with code 0.
Successfully started process for MySQL Server 8.0.37.
MySQL Server 8.0.37 intialized the database successfully.
Ended configuration step: Initializing database (may take a long time)
Beginning configuration step: Updating permissions for the data folder and related server files
Attempting to update the permissions for the data folder and related server files...
Inherited permissions have been converted to explicit permissions.
Full control permissions granted to: Servicio de red.
Full control permissions granted to: Administradores.
Full control permissions granted to: CREATOR OWNER.
Full control permissions granted to: SYSTEM.
Access to the data directory is removed for the users group.
Permissions for the data folder and related server files are updated correctly.
Ended configuration step: Updating permissions for the data folder and related server files
Beginning configuration step: Starting the server
Attempting to start service MySQL80...
Failed to start service MySQL80.
A task may only be disposed if it is in a completion state (RanToCompletion, Faulted or Canceled).
Ended configuration step: Starting the server
...............
As I’ve mentioned before the only problem I can see in the log is: root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
But I DID input my own password which was checked and re-checked multiple times in all my attempts so I guess that is a bug.
I’ve also tried to install "mysql-8.4.0-winx64" following the exact same steps and the error of it not saving my password and failing to start the server still persists so now I am quite baffled.
EDIT: I’ve also tried to install 8.0.36.0 but the error still persists.
EDIT2: I’ve tried to install 8.0.37.0 with Windows Firewall disabled but the error still persists.
EDIT3: Changed the Service Log On manually from Network Service to Local System (Allow service to interact with desktop CHECKED) and this seems to hotfix the error although I am not really sure what it does.
2
Answers
Solution: On Windows install Microsoft Visual C++ 2015-2022 Redistributable (x64) – 14.40.33810
This video this old but will solve it. I encountered a similar issue but is now working https://www.youtube.com/watch?v=6FVls45R2Ng