无法通过socket'/tmp/mysql.sock'连接到本地MySQL服务器(2)

use*_*382 134 mysql sql

我已安装MySQL服务器并尝试连接到它,但收到错误:

    Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
Run Code Online (Sandbox Code Playgroud)

我检查了我的/ tmp目录,没有mysql.sock.我无法在任何地方找到mysql.sock.我读到它可能在

    /var/lib/mysql/mysql.sock
Run Code Online (Sandbox Code Playgroud)

但我也在那里检查过,甚至没有mysql目录,只有/ lib内部有一些postfix的东西.任何人都可以帮我解决这个问题吗?

小智 257

尝试启动MySQL服务器:

mysql.server start

  • 错误!服务器退出而不更新PID文件 (32认同)

小智 57

我在更新OS X Yosemite后得到了同样的问题,解决方案很简单,检查系统首选项 - > mysql,状态为STOP.只需重新启动它,它现在在我的Mac上工作正常.

  • 嗯什么?为什么OSX的系统偏好设置有MySQL选项? (4认同)

Bry*_*yan 43

对于MAMP

ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
Run Code Online (Sandbox Code Playgroud)

来自https://coderwall.com/p/w5kwzw/solved-can-t-connect-to-local-mysql-server-through-socket-tmp-mysql-sock

更新:每次我的计算机重新启动时,我都必须输入此命令,因此我创建了一个快捷方式.

在终端类型中执行以下操作:

~: vi ~/.profile
Run Code Online (Sandbox Code Playgroud)

alias ...='source ~/.profile'
alias sockit='sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock'
Run Code Online (Sandbox Code Playgroud)

保存.

在终端类型:

~: ... 获取.profile配置.

现在在终端,你可以输入

~: sockit
Run Code Online (Sandbox Code Playgroud)


小智 31

以下命令解决了我的问题:

sudo chown -R _mysql:mysql /usr/local/var/mysql

sudo mysql.server start
Run Code Online (Sandbox Code Playgroud)


Hos*_*ury 12

在尝试所有解决方案后,它仅在指定主机后才为我工作

mysql -u root -p -h127.0.0.1
Run Code Online (Sandbox Code Playgroud)

在要求密码时

Enter password:
Run Code Online (Sandbox Code Playgroud)

按回车键

如果一切正常,它将起作用.

  • 我通过使用 Docker for Mac 使用 docker 容器设置 mysql,并将其 3306 端口映射到 Mac。不加`-h 127.0.0.1`,一直提示`Can't connect to local MySQL server through socket '/tmp/mysql.sock'(2)`;添加参数后,它运行良好。 (3认同)
  • 唯一对我有用的解决方案 (2认同)

Rah*_*hul 9

在你的mysql配置文件中,出现/etc/my.cnf以下更改然后重启mysqlddameon进程

[client]
socket=/var/lib/mysql/mysql.sock
Run Code Online (Sandbox Code Playgroud)

还要检查一下这个相关的主题

无法通过套接字'/tmp/mysql.sock连接到本地MySQL服务器


小智 8

以下解决了我的问题:

检查您的MySQL服务器列在哪里:netstat -nlp如果它是列表到TCP,则在连接到DB而不是"localhost"时使用127.0.0.1

在这里查看MySQL文档


vas*_*asu 7

试试这个对我有用.

sudo /usr/local/mysql/support-files/mysql.server start


Kri*_* PC 7

经过几个小时的努力,唯一有效的是

sudo mysql.server start
Run Code Online (Sandbox Code Playgroud)

然后用安全的方式安装

mysql_secure_installation 
Run Code Online (Sandbox Code Playgroud)

然后连接到db via

mysql -uroot -p
Run Code Online (Sandbox Code Playgroud)

Mysql是通过自制软件安装的,版本是

Server version: 5.7.21 Homebrew
Run Code Online (Sandbox Code Playgroud)

指定版本可能会有所帮助,因为解决方案可能因版本而异.


Rud*_*hah 6

首先输入这个-:

brew services start mysql
Run Code Online (Sandbox Code Playgroud)

然后这个 -:

mysql -uroot
Run Code Online (Sandbox Code Playgroud)


小智 5

在终端中输入如下:

mysql.server start
Run Code Online (Sandbox Code Playgroud)