2

I am aware that this question has been asked many times before, but all solutions I tried out did not work for me.

So, I installed MySQL Workbench and server. I log into Workbench as root. In the toolbar I click on Server then Startup/Shutdown and there I click on the button Start Server. But whenever I do this, I get following log:

018-05-14 21:09:59 - Starting server...
2018-05-14 21:10:07 - Server start done.
2018-05-14 21:10:09 - Checking server status...
2018-05-14 21:10:09 - Trying to connect to MySQL...
2018-05-14 21:10:09 - Can't connect to MySQL server on 'localhost' (10061) (2003)
2018-05-14 21:10:09 - Assuming server is not running

Addiotionally a popup appears which says:

Connect Error

Could not connect to MySQL: Can't connect to MySQL server on 'localhost' (10061)(code 2003)

One solution I found suggested installing the server manually. So I went into cmd as admin and typed:

C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld" --install

It gave following output:

Service successfully installed.

But in Workbench the Server is still stopped and when trying to start it like mentioned above the same logs with the same popup and error appears.

Another solution I found suggested installing MySQL Notifier and using it to start and stop the server and use it to manage monitored items. But quite frankly, once I restart workbench and try to log in as root, it wont even log in but give following pop up error:

Cannot Connect to Database Server

Your conection attempt failed for user 'root' from your host to server at localhost:3306:
Authentication plugin 'catching sha2 password' cannot be loaded: Das angegebene Modul wurde nicht gefunden.

Please:
1 Check that mysql is running on server localhost
2 Check that mysql is running on port 3306 (note: 3306 is the default, but this can be changed)
3 Check the root has rights to connect to localhost from your adress (mysql rights define what clients can connect to the server from which machines)
4 Make sure you are both providing a password if needed and using the correct password for localhost connecting from the host adress you're connecting from

So now this "Authentication plugin 'catching sha2 password' cannot be loaded:" looks suspicious and I tried looking that up. I found this solution, which requires me to log into MySQL from cmd, but when I type C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u root -p and execute it, it asks for the password which I provide, but then it answers with

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Now I hit a wall and I don't know how to continue. The MySQL server still doesn't work and I am desperate.

3 Answers3

0

Do you have SQL Server (MSSQL) instance installed on your machine? If so, this may cause an issue. MSSQL may "capture" port 3306. Try to stop MSSQL service and test MySQL.

Ilya Zhidkov
  • 95
  • 3
  • 7
  • How do I check this? –  May 14 '18 at 20:02
  • Wait I think I've found it. I went into MySQL Notifier > Actions > Manage Monitored Items... > Instances, but I have found nothing. It is empty. –  May 14 '18 at 20:05
  • 1
    Press Windows key + R. A dialog should appear, type: services.msc and press enter key. Search for SQL Server (MSSQLSERVER) right click on it and choose to stop service. – Ilya Zhidkov May 14 '18 at 20:05
  • I did what you said, but I didn't found "MSSQLSERVER". The only thing I see related to MySQL are two services called "MySQL" and "MySQL80". –  May 14 '18 at 20:08
  • For me, turned out I missed some files when copying the data directory. I was setting up a second instance of MySQL. The answer was in the .err log file. – Hein du Plessis May 16 '23 at 18:17
0

The easiest way to resolve the error where the service does not start is by going into the registry as Administrator.

Navigate to HKLM\System\ControlSet001\Services\MySQL Change image path to "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" --defaults-file=C:\Program Files\MyNewSQL\bin\MyNewSQL.ini MyNewSQL

My problem (same as yours):

Current Registry Setting: C:\MySQLs\MySQLDev\bin\mysqld --defaults-file=C:/MySQLs/MySQLDev/MySQLDev.ini MySQLDev

Change Registry Setting to: C:\MySQLs\MySQLDev\bin\mysqld.exe --defaults-file=C:/MySQLs/MySQLDev/MySQLDev.ini MySQLDev

Rerun "net start MySQLDev"

The MySQLDev service is starting. The MySQLDev service was started successfully.

RadFox
  • 419
  • 1
  • 4
  • 17
0

On Windows 10 and previous versions, you MUST give the User assigned to the MySQL service full permission of the MySQL folders.

I believe the newest version uses, User NETWORK SERVICES, therefore use File Explorer, right click on all of the MySQL folders, click on Properties, Security, Edit and give User NETWORK SERVICES full access of those folders. Failure to do this will result in the Service starting and stopping due to errors which are visible if you use Command Line.