安装mysql5.7后无法启动,/var/run/mysqld 目录每次重启后都需要手动去创建--终极解决方案

鉴于很多童鞋反应,mysql5.7安装后出现无法启动,建立/var/run/mysqld 并赋权mysql用户解决了启动的问题,但是重启系统后又出现无法启动的问题,导致/var/run/mysqld 目录每次重启后都需要手动去创建并赋权mysql用户才能起到mysql,可以说,这是mysql5.7的一个小BUG,经过探索实践,现给出终极解决方案:

首先申明,修改my.cnf没有用。

之所以/var/run/mysqld 目录每次重启后都需要手动去创建,是因为/var/run/目录下建立文件夹是在内存中,故每次重启后内存被清空导致/var/run/mysqld 也被清除,从而导致无法启动mysql。

vim /etc/init.d/mysqld

找到下面字段

get_mysql_option mysqld datadir "/var/lib/mysql"
datadir="$result"
get_mysql_option mysqld socket "$datadir/mysql.sock"
socketfile="$result"
get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"
errlogfile="$result"
get_mysql_option mysqld_safe pid-file "/var/run/mysqld/mysqld.pid"
mypidfile="$result"

修改为

get_mysql_option mysqld datadir "/var/lib/mysql"
datadir="$result"
get_mysql_option mysqld socket "$datadir/mysql.sock"
socketfile="$result"
get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"
errlogfile="$result"
get_mysql_option mysqld_safe pid-file "/var/lib/mysql/mysqld.pid"
mypidfile="$result"

保存后退出,执行下面命令:

systemctl daemon-reload   //重构进程

service mysqld start    //启动mysql

chkconfig mysqld on    //加入随系统启动启动

 

至此,解决。
---------------------
作者:我心银河系
来源:CSDN
原文:https://blog.csdn.net/codemacket/article/details/77719323
版权声明:本文为博主原创文章,转载请附上博文链接!

posted on 2019-01-23 09:05  四海骄阳  阅读(639)  评论(0编辑  收藏  举报

导航