`ERROR 2002(HY000):无法通过socket' /var/run/mysqld/mysqld.sock&#39连接到本地MySQL服务器; (2"没有这样的文件或目录")`

时间:2016-07-09 07:40:31

标签: mysql mariadb homestead

我最近将我的家园升级到最新版本(Ubuntu 16.04)并重新初始化所有homestead.yaml等。

我在Homestead.yaml中放了mariadb: true。一切安装完美,正常运行。 但有一段时间后,mysql会自行停止。

错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")

我已经尝试sudo services mysql reload了。它恢复正常,但几分钟后开始关机。

在升级之前,一切都很完美。

有什么建议吗?我试过重新提供仍然没有希望。

2 个答案:

答案 0 :(得分:1)

我有类似的问题。尝试安装virtualbox版本5.0.18 https://www.virtualbox.org/wiki/Download_Old_Builds_5_0 然后运行

vagrant reload --provision

答案 1 :(得分:0)

apparmor是罪魁祸首。尽管/etc/apparmor.d/usr.sbin.mysqld的内容只是评论并且声称它存在,所以apparmor不会在MariaDB上窒息,这正是发生的事情。

在Oracle博客上的

AppArmor and MySQL提供了我需要弄清楚发生了什么的事情。

sudo aa-status向您展示了apparmor正在做什么;什么实际上有一个强制执行的政策,而不是刚刚抱怨的。

sudo apt-get install apparmor-utils添加了一些命令,使apparmor配置文件更易于处理,例如......

sudo aa-complain /usr/sbin/mysqld将个人资料从“强制执行”变为抱怨。 (aa-enforce将其拒之门外。)

完成后,sudo service apparmor reload重启apparmor,瞧... sudo /etc/init.d/mysql start正常工作,服务器保持运行状态。

参考:https://askubuntu.com/questions/750604/why-does-mariadb-keep-dying-how-do-i-stop-it