systemd无法启动数据库解决方法
今天搭建systemd用了管理mysql启动时遇到无法启动,但 是/etc/init.d/mysqld start 可以正常启动mysql。
- 在linux先执行如下语句
systemctl start mysqld
会出现如下报错:
报错说无法通过sock文件连接到本地mysql。 - 此时分别执行
service mysqld start
和service mysqld stop
会成功启动和关闭mysql。 - 这说明systemd的相关配置存在问题,所以我们需要去确认systemd的配置文件是否有误。输入
cat /etc/systemd/system/mysqld.service
- 确认system的配置文件没有问题之后,再打开一个新会话窗口,输入
tail -f /var/log/messages
并在第一个会话窗口执行systemctl start mysqld
。然后可以看到systemd的相关日志信息。
报错说mysqld.service不能够执行命令没有权限。 -
chown mysql.mysql /etc/systemd/system/mysqld.service
和chown root.root /etc/systemd/system/mysqld.service
给mysqld.service权限。并再次重复第四个步骤,结果还是报相同错误。 - 最后考虑到是不是selinux没有关闭。执行
setenforce 0
,并重复第四步。结果没有报错。 - 最后执行一下
systemctl start mysqld
和netstat -lntup|grep 330
并出现相关的端口信息就说明修改成功了。