MySQL 5.7 没有目录,用HOME=/登录

the*_*uts 21 server mysql

如果已经问过这个问题,我很抱歉,但我找不到这个(可能很小)问题的任何解决方案:

我刚刚在 14.04 服务器上全新安装了 mysql-server 5.7。每次启动 MySQL 服务时,我都会收到此错误:

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
Run Code Online (Sandbox Code Playgroud)

这意味着什么?我是否必须为用户“mysql”设置主目录?(如果是这样,最好的选择是什么?/home/mysql??)现在是 /nonexistent:

mysql:x:110:106:MySQL Server,,,:/nonexistent:/bin/false
Run Code Online (Sandbox Code Playgroud)

但我有另一台具有相同/不存在的机器,它没有显示任何错误......

Abd*_*yee 43

有同样的问题来摆脱这个错误我做了以下

  1. 停止MYSQL服务:

    sudo service mysql stop

  2. 将 mysql 的主目录从不存在更改为它应该在的原始目录:

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

现在再次启动mysql服务器:

sudo service mysql start
Run Code Online (Sandbox Code Playgroud)

错误信息消失了。仍然未知为什么会发生这种情况。

  • 值得一提的是,我在 Windows WSL 中运行 mysql 时遇到了这个错误。在 Windows 上退出 mysqld.exe 后,错误停止发生。端口 3306 已被 Windows 进程占用。 (3认同)
  • 是的,这是一种解决方法,当您找到解决方案时请告诉我。 (2认同)