Trying to Start MySQL Server and Getting "Could not start server: argument 2: <class 'TypeError'>: wrong type"

Viewed 18073

I just installed MySQL using the community installer in hopes of running a server and creating a database for use in my C++ program. I installed the Server, Workbench, Shell, Router, and Connector/C++ before running the Workbench. Everything appeared to be working properly. The server was running and I was able to connect to it in my C++ program, so I started to create my database, when the power suddenly went out before I could finish.

Once the power came back on and my PC rebooted, I reopened the MySQL Workbench to find that I was unable to start the server. I clicked the 'Start Server' button several times, but was met with the error "Could not start server: argument 2: <class 'TypeError'>: wrong type".

I tried uninstalling and reinstalling everything, but when I reopened the MySQL Workbench after the installation was finished, I was met with the same error. Does anyone know what could have possibly happened?

EDIT: After uninstalling everything and deleting every trace of MySQL from my computer, I was able to reinstall everything and get the server running again. However now I'm getting the same error when I try to STOP the server: "Could not stop server: argument 2: <class 'TypeError'>: wrong type". What is going on????

9 Answers

I have the same issue and I've installed the developers default version of the MySQL-Workbench with the installer. I recently updated my hardware and reinstalled Windows 10, maybe it's a bug of Windows 20H2 or of the Workbench itself?

I found a workaround: Use the CMD or the Powershell to start or stop the MySQL-Service of the server. In my case, it has the name MySQL80. Take a look in your services of windows when the commands below are not working.

Use net start MySQL80 to start the server. Use net stop MySQL80 to stop the server.

Remember to open the CMD or the Powershell as Administrator. I think this issue is a bug of the workbench itself because the service is start and stopable with the command line.

The first thing to try is to run mysqld --console from the MySQL server bin folder. That should give you more specific error messages.

In my case, the data folder was missing. I needed to run one of the mysqld --initialize... commands; see https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization.html. On Windows, running mysqld --initialize... --console helps to see what server is doing.

Once that's done, you can run mysqld --console again to see if it starts successfully.

I solved this problem as follows. currently my.ini file encoding is UTF-8. you must change to ANSI.

I've done numerous suggestions and none work. Except this one:

  1. Download and run the latest MySQL Installer. A window will appear showing your installed services:

    • MySQL Server
    • MySQL Workbench
    • MySQL Shell
    • etc.
  2. Click "reconfigure" on the MySQL Server and set up the server as you did previously.

My specific server setup was:

  1. Type and Networking: leave as default

  2. Authentication Method: (RECCOMENDED)

  3. Accounts and Roles: Enter and check mysql password

  4. Windows Service: Uncheck 'configure as a service'

  5. Apply configuration: Execute

Server should be up and running.

in my case I had solve this way

Go to RUN----->Services.msc----->MYSQL80---->start server

hope this way problem will solved.

On my Windows installation the account the service runs under did not have (security) permissions to the non-existing data directory. After creating the data directory which was "Program Files\MySQL\MySQL Server 8.0\data" and setting permissions everything worked with a "net start mysql80".

Here are the steps I took to resolve my MySQL Workbench 8.0.23 issue that resulted in an inability to start & stop the MySQL server process (mysqld) from MySQL Workbench (O/S=Windows only answer)...

  1. Close MySQL Workbench
  2. In C:\Users<Your account>\AppData\Roaming\MySQL\Workbench\serverinstances.xml:
  • Replaced:
    • sc start MySQL80
    • sc stop MySQL80
  • With:
    • net start MySQL80
    • net stop MySQL80
  • Notes:
    • My mysqld service was installed w/ the name='MySQL80', replace/match this value to your actual service name.
    • My mysqld service was installed using a 'Network Service' account, verify that your service is also running as a network service before using the 'net' commands
  1. Setup MySQLWorkbench CE 8.0 executable to 'Run As Administrator' so that the commands to start and stop the service run as an administrator:
  • In File Explorer find the MySQLWorkbench.exe executable: E.g: C:\Program Files\MySQL\MySQL Workbench 8.0\MySQLWorkbench.exe
  • In File Explorer, Select the exe, Right click on the exe, select 'Properties', select 'Compatibility' tab: specify 'Run This Program As An Administrator'
  1. Start MySQL Workbench
  • Attempt to start or stop the MySql server process (mysqld)

Notes:

  • O/S = Windows 10 specific
  • MySQL & MySQL Workbench were installed via the MySQL CE 8.0.23 installer
  • Installed MySQL 8.0.23 as an upgrade from 5.7 to 8.0.23

If this error while starting/connecting the server from Workbench then you need to Go Start->MYsql workbench Installation Click. Open and reconfigure the MySQL server with port number and Create Root user Password. Finish this Re-configuration then open workbench. Provide the Port number and Credentials and connect to DB.

In window you may use task manager

  1. just open task manager by search "task manager" in window search
  2. Go to service and find Mysql (name depending on the name saved when initializing mysql server at first time)
  3. Right click it and click start to start server or stop to stop server Window task manager
Related