jueves, 19 de noviembre de 2015

Mysqld arranca y se para... sin más, y de instalarlo como servicio de windows

Esto es más viejo que la tos pero el hombre es el único animal que tropieza con rayas pintadas en el suelo... Pasa que estoy jugando con MySQL e intento iniciar el servidor desde línea de comandos pero especificando un archivo de defaults concreto.

Por lo que sea, estaba intentando mysqld -u root --defaults-file="myB.ini" y ni flores. El problema es el orden de los argumentos.

mysqld --defaults-file="myB.ini" -u root

Y pensando un poco más, ¿para qué el "-u root"? Mysqld pone en marcha el servidor y no necesita usuario —hay una opción -u para arrancarlo con otro usuario diferente de root, eso sí— pero la cuestión es que son los clientes los que han de conectarse identificados para poder hacer algo con él. Otra cosa es que tú, desde el sistema operativo, tengas permisos o no para ejecutar mysqld.

Total, que si hubiera empezado con solo mysqld --defaults-file="myB.ini" me hubiera ahorrado todo el follón.

La de tiempo que he gastado... cuando lo dice hasta en la ayuda del mysqld.

La otra ha sido intentar instalarlo como servicio. Otro montonazo de tiempo hasta que me he dado cuenta de que si no has hecho una instalación de las de "sí, sí y sí" todo cambia. En mi caso que la ruta exacta de la carpeta del programa es "C:\Program Files\mysql". Para que el servicio se instale correctamente hay que darle todas las rutas:

"C:\Program Files\mysql\bin\mysqld" --install MySQLB --defaults-file="C:\Program Files\mysql\myB.ini"

Si no lo hacemos así, el servicio se registra con una ruta como "C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe", vamos, la que los de MySQL hubieran querido. Pero yo no.

Como digo, anciano, pero este blog es para no volver a tropezar, al menos no en la misma raya pintada.

No hay comentarios:

Publicar un comentario