我尝试在我的 Mac OS X 上运行 mysql 命令但一直出现错误:
错误 2002 (HY000):无法通过套接字“/tmp/mysql.sock”连接到本地 MySQL 服务器 (2)
我确实尝试过对此进行深入研究,但找不到合适的解决方案。大多数解决方案都参考了 /etc/my.cnf,但我似乎根本没有这个配置文件。我几乎陷入困境,而且已经很长时间了。任何帮助都非常感谢。
答案1
除了 ajreal 的回答之外,还要检查“显而易见”的内容……很多时候,当 MySQL 服务器未运行或您无权访问它时,您会收到此错误。检查您的进程列表以确保它正在运行,看到类似以下内容...
$ ps -ef |grep mysql
root 5325 1 0 13:09 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe
mysql 5413 5325 0 13:09 ? 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --port=3306 --socket=/var/run/mysqld/mysqld.sock
root 5415 5325 0 13:09 ? 00:00:00 logger -p daemon.err -t mysqld_safe -i -t mysqld
如果您没有权限,请尝试命令 sudo chmod 775 /var/lib/mysql
来提升您的权限。
或者如果它正在运行,您可能需要重新安装(哎呀)但如果您没有太多时间,并且可以选择删除它,请将其作为最后的手段。
答案2
- 检查套接字 /tmp/mysql.sock 是否存在
- 检查 mysql 守护进程是否正在运行
- 检查它是否仅使用/监听端口
这可能是服务器故障区域
ps afx | grep mysql <--- this will show the mysql daemon command,
you can make use of the information returned