MySQL 5.7 Sin directorio, iniciando sesión con HOME = /

16

Lo siento si esta pregunta ya se ha hecho, pero no puedo encontrar ninguna solución a este problema (quizás pequeño):

Acabo de hacer una nueva instalación de mysql-server 5.7 en un servidor 14.04. Cada vez que se inicia el servicio MySQL, aparece este error:

root@xxx:/etc/mysql# service mysql restart
 * Stopping MySQL Community Server 5.7.11
...
 * MySQL Community Server 5.7.11 is stopped
 * Re-starting MySQL Community Server 5.7.11
No directory, logging in with HOME=/
..
 * MySQL Community Server 5.7.11 is started

Qué significa eso? ¿Tengo que configurar un directorio de inicio para el usuario "mysql"? (y si es así, ¿cuál es la mejor opción? / home / mysql ??) Ahora es / inexistente:

mysql:x:110:106:MySQL Server,,,:/nonexistent:/bin/false

pero tengo otra máquina con el mismo / inexistente, y no muestra ningún error ...

Las nueces
fuente
1
/ var / log / mysql ;-) ver: askubuntu.com/questions/539440/…
Rinzwind
ok, en mi caso comenzó y parece funcionar bien, solo muestra ese aviso
the_nuts

Respuestas:

31

Al tener el mismo problema para deshacerme de este error, hice lo siguiente

  1. Detener el servicio MYSQL:

    sudo service mysql stop

  2. Cambie el directorio de inicio de mysql de inexistente al directorio original donde se supone que debe estar:

    sudo usermod -d /var/lib/mysql/ mysql

Ahora inicie el servidor mysql nuevamente con:

sudo service mysql start

El mensaje de error ha desaparecido. Aún se desconoce por qué sucede esto.

Abdul Hayee
fuente
1
Podría ser una solución, pero no estaría de acuerdo con esto. / home / es para usuarios. No es para crear un lugar para usuarios ficticios que se necesitan para seguridad / permisos / lo que sea. La persona que sugiere / home / mysql y crea un usuario real de mysql debería ser seriamente reprendida .
Rinzwind
/ var / lib o / var / log? De todos modos, ese directorio no parece estar
lleno de
2
sí, esta es una solución, avíseme cuando encuentre una solución.
Abdul Hayee
1
De acuerdo con esta publicación , Red Hat tiene el directorio de inicio mysql establecido en /var/lib/mysql. Esto parece estar bien ...
ostrokach
2
Por lo que vale, recibí este error cuando estaba ejecutando mysql en Windows WSL. El error dejó de ocurrir después de que salí de mysqld.exe en Windows. El puerto 3306 fue reclamado por el proceso de Windows.
Azeirah
0

Además, sugeriría una solución permanente, si siempre se ejecuta desde el mismo directorio que supongo que debería, ¿por qué no editar el usuario mysql en / etc / passwd:

mysql:x:106:111:MySQL Server,,,:/var/lib/mysql/:/bin/false
h.seguro
fuente