问题:
每次打开虚拟机都发现MySQL服务没有启动,查看状态时,发现报错:Failed to start MySQL Server.
之前在日志里面发现是pid文件无法找到,不知道为什么每次关机都会自动删除mysqld.pid文件,用命令行查看MySQL的配置文件/etc/my.cnf,看到我的mysqld.pid文件的路径是/var/run/mysqld/mysqld.pid
cat /etc/my.cnf
用命令行查看var/run目录下的文件,确实没有mysqld/mysqld.pid文件
ls /var/run
解决方法:
每次关机都自动删除mysqld.pid文件,那我们每次开机都自动生成mysqld.pid文件即可。~/.bashrc文件会在每次开机后自动运行里面的命令行。
vi ~/.bashrc
在~/.bashrc文件里加
mkdir /var/run/mysqld
touch /var/run/mysqld/mysqld.pid
chown mysql.mysql /var/run/mysqld/mysqld.pid
每台虚拟机的pid-file路径可能不一样,换成你自己的即可。重启虚拟机,看看是否解决成功。
reboot
虚拟机启动后,查看mysqld的运行状态,在终端输入:
systemctl status mysqld
可以看到MySQL服务已经自动开启了。
这个方法也可以解决source /etc/profile只在运行终端生效,新开启的终端无效的问题,只需要在~/.bashrc文件里加
source /etc/profile