1. 查看mydql状态
systemctl status mysql

在这里插入图片描述

The designated data directory /var/lib/mysql/ is unusable

  1. 查看mysql日志
tail -f /var/log/mysql/error.log

tail: cannot open ‘/var/log/mysql/error.log’ for reading: No such file or directory
tail: no files remaining

  1. 第一次执行
sudo mysqld --initialize

在这里插入图片描述

打不开该文件

Could not open file ‘/var/log/mysql/error.log’ for error logging: No such file or directory

创建error.log

发现没有该文件

 cd /var/log
mkdir /var/log/mysql
 cd /var/log/mysql
 touch error.log

  1. 再次执行
sudo mysqld --initialize
没有报错

尝试启动,还是报错

在这里插入图片描述
上帝视角是因为之前的error.log没有添加权限,导致无法写入
查看日志cat /var/log/mysqld.log

这是另外一个日志信息,还是没有该文件

cat: /var/log/mysqld.log: No such file or directory

touch mysqld.log
 chmod 777  /var/log/mysqld.log

现在的日志信息

/var/log/mysql/error.log

/var/log/mysqld.log

查看上次创建error.log文件之后,initialize的错误信息

在这里插入图片描述

数据目录从未使用

删除

 rm -rf /var/lib/mysql/*

  1. 第三次

再次执行sudo mysqld --initialize

mysql用户无法写入

修改权限

在这里插入图片描述

sudo chmod -R 755 /var/log/mysql/
递归的将/var/log/mysql/目录下的所有文件和子目录权限设置为755
  1. 第四次
    再次启动sudo mysqld --initialize

无问题

再次启动

 systemctl start mysql

在这里插入图片描述

总结一波

ERROR 2 NO such file or directory

原因是没有创建日志目录 /var/log/mysql/error.log虽然之前安装的时候能使用,但是后来改了默认配置vim /etc/mysql/mysql.conf.d/mysqld.cnf增加了日志目录log_error,但是没有创建目录,导致启动失败。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐