无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器。
Posted
技术标签:
【中文标题】无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器。【英文标题】:Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'. 【发布时间】:2016-02-17 04:27:42 【问题描述】:尝试了所有帖子的解决方案。 ERROR 2002 (HY000): Can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock' (2)
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysql.sock' (2)
Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (38)
在跟进过程中遇到了另一个问题.. sudo:有效uid不为0,sudo是否安装了setuid root?
所以对于这个尝试过的帖子
http://ubuntuforums.org/showthread.php?t=2222715
sudo: effective uid is not 0, is sudo installed setuid root?
还有这个 chown:更改 `/usr/bin/sudo' 的所有权:不允许操作
任何人都可以为此提供完美的解决方案.. 除了重新安装操作系统。我没有用于恢复的救援磁盘。
【问题讨论】:
你是如何使用命令行连接到 mysql 的?如果是,请提供您正在使用的命令。还告诉我们那是什么操作系统。 是的,我在 linux 上使用命令行连接。我正在使用这个命令 mysql -uroot -p 好的,mysql服务状态/etc/init.d/mysql status
是什么?
你试过重启mysql服务了吗? netstat -pan | grep 3306
命令的输出是什么?顺便说一句,那是什么操作系统?
它的 Ubuntu O/p(无法读取“-p”的信息:geteuid()=1000,但您应该是 root。)
【参考方案1】:
尝试停止您的 mysql 服务器并重新启动它。
/etc/init.d/mysql stop /etc/init.d/mysql start
仍然是同样的问题,然后从 mysql 目录重命名 mysql.sock
文件,例如/var/lib/mysql/mysql.sock
文件夹并重启mysql服务器。
【讨论】:
/etc/init.d/mysql stop ---> 说与其通过 /etc/init.d 调用初始化脚本,不如使用 service(8) 实用程序,例如service mysql stop 由于您尝试调用的脚本已转换为 Upstart 作业,您还可以使用 stop(8) 实用程序,例如当我使用 stop mysql 或 service mysql stop 时停止 mysql 显示未知实例 你是否可以使用以下任何命令来停止或启动 mysql../etc/init.d/mysql start
/etc/init.d/mysqld start
service mysql start
service mysqld start
??
status mysql 显示 mysql 停止/等待。 service mysql start 显示启动:拒绝发送消息,1 个匹配规则; type="method_call", sender=":1.30" (uid=1000 pid=2209 comm="start mysql") interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")
/etc/init.d/mysql start 显示 与其通过 /etc/init.d 调用初始化脚本,不如使用 service(8) 实用程序,例如service mysql start 由于您尝试调用的脚本已转换为 Upstart 作业,您还可以使用 start(8) 实用程序,例如start mysql start: 拒绝发送消息,1 个匹配规则; type="method_call", sender=":1.34" (uid=1000 pid=2223 comm="start mysql") interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")
@VarunChawla...您需要在命令下强制停止mysql并获取mysql的hte pid并杀死它们...ps -ef |grep mysql.sock
然后使用kill -9 pid
杀死pid以上是关于无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器。的主要内容,如果未能解决你的问题,请参考以下文章