Cheers. For (reasons) I want to run MySQL 8.0.30 in the "no-monitor" mode, which keeps the service running as a single process. Docs here.

The documentation makes no reference to windows service (as opposed to just the mysqld.exe executable), so I tried the obvious modification of adding the CLI argument to the service definition:

        TYPE               : 10  WIN32_OWN_PROCESS
        START_TYPE         : 3   DEMAND_START
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : C:\MySQLSrv\bin\mysqld.exe --no-monitor
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : MySQL
        DEPENDENCIES       :
        SERVICE_START_NAME : LocalSystem

However, this results in a service that "fails to start".

The MySQL service failed to start due to the following error: The service did not respond to the start or control request in a timely fashion.

Not because of any error. mysql.err reports that everything's still working:

2023-03-24T09:37:36.811121Z 0 [System] [MY-010931] [Server] C:\MySQLSrv\bin\mysqld.exe: ready for connections. Version: '8.0.30

In fact, I can connect to the MySQL service using the CLI client in the 30 seconds before windows kills it.

What am I missing here? Is this option not intended for use in the windows service definition? Or do I need to make further modifications to the service definition?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Browse other questions tagged or ask your own question.