MySQL 5.7 Sem diretório, efetuando login com HOME = /


16

Sinto muito se esta pergunta já foi feita, mas não consigo encontrar nenhuma solução para este (talvez pequeno) problema:

Acabei de fazer uma nova instalação do mysql-server 5.7 em um servidor 14.04. Sempre que o serviço MySQL é iniciado, recebo este erro:

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

O que isso significa? Preciso definir um diretório inicial para o usuário "mysql"? (e se sim, qual é a melhor escolha? / home / mysql ??) Agora é / inexistente:

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

mas tenho outra máquina com a mesma / inexistente e não mostra nenhum erro ...


11
/ var / log / mysql ;-) veja: askubuntu.com/questions/539440/…
Rinzwind

ok, no meu caso começou e parece funcionar bem, isso só mostra apenas que a notificação
the_nuts

Respostas:


31

Tendo o mesmo problema para se livrar desse erro, fiz o seguinte

  1. Pare o serviço MYSQL:

    sudo service mysql stop

  2. Mude o diretório inicial do mysql de inexistente para o diretório original, onde deveria estar:

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

Agora inicie o servidor mysql novamente com:

sudo service mysql start

A mensagem de erro desapareceu. Ainda não se sabe por que isso acontece.


11
Pode ser uma solução alternativa, mas eu discordo disso. / home / é para usuários. Não é para criar um local para usuários fictícios necessários para segurança / permissões / o que for. A pessoa que sugere / home / mysql e cria um usuário mysql real deve ser seriamente repreendida .
Rinzwind 23/02

/ var / lib o / var / log? De qualquer forma, esse diretório não parece estar sendo preenchido com nenhum dado
the_nuts

2
sim, esta é uma solução alternativa, deixe-me saber quando você encontrar uma solução.
Abdul Hayee

11
De acordo com este post , o Red Hat possui o diretório inicial do mysql definido como /var/lib/mysql. Portanto, este parece ok ....
ostrokach

2
Pelo que vale, recebi esse erro quando estava executando o mysql no Windows WSL. O erro parou de acontecer depois que eu fechei o mysqld.exe no Windows. A porta 3306 foi reivindicada pelo processo do Windows.
Azeirah 20/02/19

0

Gostaria ainda de sugerir uma solução permanente, se ela sempre é executada no mesmo diretório que suponho que deveria, por que não editar o usuário mysql em / etc / passwd:

mysql:x:106:111:MySQL Server,,,:/var/lib/mysql/:/bin/false
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.