[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist

mysql 启动总是报错:

错误日志中显示:

[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist

表不存在,肯定指定目录datadir错了

vi /etc/my.cnf 

确认一下datadir 是不是你指定的目录

然后确认这个目录下是否有mysql 数据库文件

没有的话 或不存在的话

可以执行mysql目录下 scripts 下的mysql_install_db 重新安装,不指定目录的话 就读取my.cnf 中的配置 安装路径了。

然后启动 解决。

当然,如果错误日志提示没有权限写入PID,

那,

1、确定mysql的所有者是mysql 用户

并且有755的权限

2、确认my.cnf 中配置mysql的启动用户是mysql 

user = mysql 

好了,根据日志找原因很简单。

原文地址:https://www.cnblogs.com/already/p/5944803.html