升级到 Pangolin 后,mysqld 无法在启动时启动。我研究了 Pangolin 版本的各种其他 MySQL 问题,但没有发现其他人遇到的相同问题(mysqld 弹跳等)。一旦我从命令行运行它,它就可以正常运行。
我应该在哪里添加启动时启动服务的命令?
答案1
当我寻找相同症状的解决方案时,我发现有很多事情可能会出错并阻止 mysql(d) 启动。如果您能够设法使用正确的用户从命令行启动它:
sudo -u mysql mysqld
相反,它作为一项服务却失败了:
root@my-linode:~# service mysql start
start: Job failed to start
然后检查 upstart 登录/var/log/upstart/mysql.log
。如果发现以下错误信息:
[ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
那么你已经找到了罪魁祸首。要修复它,请在/etc/mysql/my.cnf
user=mysql
重新启动start mysql
,你就应该一切顺利。
再次强调,导致此错误的原因有很多(apparmor、套接字文件权限不正确、磁盘空间不足、升级期间内存不足,这些只是我偶然发现的一些原因)。这只是其中之一。感谢这家伙。
答案2
sudo service mysql start
应启动 mysql。这是一个 upstart 作业,因此完整作业可以在 /etc/init/mysql.conf 中看到
您可能需要检查 /var/log/mysql*,因为升级表过程可能存在导致问题的问题。
答案3
这在 11.xx 12.04 升级期间为我解决了这个问题:
sudo touch /etc/apparmor.d/local/usr.sbin.mysq
我可以在安全模式下启动它,但不能在常规模式下启动它。希望这能有所帮助。
答案4
好吧,问题就在这里,也许你的问题是一个域问题。Mysql 可能安装在其他用户配置文件中,但由于配置文件问题而无法启动。好吧,这是我为你找到的一件事。
http://www.thegeekstuff.com/2009/07/ubuntu-open-applications-automatically-during-system-startup/
并且有一个和你类似的问题也遇到了这个问题。所以我为你找到了以下答案。 https://stackoverflow.com/questions/2198752/adding-a-start-up-via-command-line-ubuntu
尝试一下吧。