我刚刚在Debian上升级了我的MySQL服务器。然而,现在当我启动服务器并尝试连接到它时,我得到了错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)我怎么才能解决这个问题?
发布于 2012-10-19 17:00:21
我知道这个问题已经存在了五个月,但是由于我在三次不同的升级中遇到了同样的问题,我想无论如何我都会发布我的解决方案。
在我的例子中,这似乎是由于Debian更新脚本中的一个bug (所以这个问题也可能出现在Ubuntu中)。不知何故,在升级过程完成后,一些二进制日志文件以错误的所有权结束。这使服务器无法获得对其自己的日志的写访问权,因此无法启动。
在Debian上(至少在我们的服务器上),这些文件都位于/var/lib/mysql中。其中的所有东西都应该由用户mysql和组mysql拥有。但是,升级后的一些文件mysql-bin.*是根用户拥有的。将日志文件的所有权更改为mysql允许服务器正确启动:
# chown mysql:mysql /var/lib/mysql/mysql-bin.*
# /etc/init.d/mysql start我希望这能节省一些时间。
发布于 2012-05-16 19:41:42
尝试以下几点
mkdir /var/run/mysql
chown mysql:mysql /var/run/mysql那就启动mysql。
发布于 2012-05-16 19:41:40
MySQL很可能没能启动。尝试运行ps aux | grep mysqld以查看mysql守护进程是否有进程ID。
要详细了解Shane的评论,请查看MySQL日志,找出其启动失败的原因。默认位置是/var/log/mysql/error.log
https://serverfault.com/questions/389678
复制相似问题