主机名变更导致MySql启动失败

问题描述

mySql 启动时,报错ERROR! The server quit without updating PID file (/usr/local/var/mysql/bogon.pid)

解决方法

sudo chmod -R 777 /usr/local/var/mysql/
sudo chmod -R 777 /tmp/

背景

电脑重启后发现程序无法连接本地的MySql数据库,PS后发现程序没有运行

ps -ef|grep mysql

通过brew services restart mysql重启失败。
找到mySql程序手动启动,报错ERROR! The server quit without updating PID file (/usr/local/var/mysql/bogon.pid)

sudo /usr/local/bin/mysql.server start
ERROR! 
The server quit without updating PID file (/usr/local/var/mysql/bogon.pid)

这里发现个有趣的地方,为什么是bogon.pid。电脑的主机名为什么变成了bogon这里推荐一篇文章。到这里猜测是由于主机名变更导致mysql启动失败。
进一步查看错误日志:

less bogon.err

发现为[ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
网上搜索解决方案:

sudo /usr/local/bin/mysql.server start --user=root

确实可以启动成功,但是下次启动还要加这个参数,太麻烦了。
root用户能启动,但普通用户无法启动,所以想到了是权限问题,将/usr/local/var/mysql(数据库的数据与日志目录)权限改为777.mysql 还用到了/tmp/目录文件,顺便将此目录也改为全部权限。

sudo chmod -R 777 /usr/local/var/mysql/
sudo chmod -R 777 /tmp/

现在启动正常了。

总结

mac电脑的主机名变更,导致mySql启动时读取的错误文件变了(bogon.err)。进而引发了权限问题,将权限赋予后,ok。

你可能感兴趣的:(主机名变更导致MySql启动失败)