问答中心分类: MYSQL错误 2002 (HY000): 无法通过套接字 '/tmp/mysql.sock' 连接到本地 MySQL 服务器
0
匿名用户 提问 1月 前

我在 Mac OS X Mountain Lion 上安装了 MySQLhomebrew install mysql,但是当我尝试mysql -u root我收到以下错误:

ERROR 2002 (HY000): 无法通过套接字 ‘/tmp/mysql.sock’ 连接到本地 MySQL 服务器 (2)

这个错误是什么意思?我该如何解决?

hanky panky 回复 1月 前

没有发布它作为答案,但你必须install mysql-server包装,不仅仅是mysql

hanky panky 回复 1月 前

你是对的,Hanky Panky,我找到了一个脚本,可以在我的系统(Mac OSX Mountain Lion)上完全安装 MySQL 所需的一切,并且成功了。我一定错过了几件事。

hanky panky 回复 1月 前

@shrewdbeans 你发现什么脚本可以在 mac 上完全安装所有 MySQL 依赖项?

hanky panky 回复 1月 前

@HankyPanky 当你写它的时候也许这是真的。但在 2016 年,Brew 没有mysql-serverinstall.

hanky panky 回复 1月 前

请务必注意,您使用 Homebrew 安装所以忽略非自制提示并开始(并在启动时重新启动)brew services start mysql或(如果您不想要后台服务)mysql.server start.

hanky panky 回复 1月 前

找如果mysql.sock首先存在于sudo find / -type s | grep mysql

hanky panky 回复 1月 前

@prayagupd,如果它不存在,该怎么办?因为由于数据库大,mysql崩溃后我没有找到我的。

hanky panky 回复 1月 前

@凯特尔狗“套接字文件在服务启动时创建,在服务终止时删除。”并在/usr/local/etc/my.cnf在 MacOS 中将在其他 Linux 发行版中处于不同的位置。如果您再次启动 mysql 服务,它应该存在

hanky panky 回复 1月 前

我让它工作,但使用旧的普通 mysql5.7.19.新的mysql@5.7版本5.7.24无法工作,因为某些配置引用保持链接到旧的 mysql 而不是新的 brew Cellar mysql@5.7 Keg。所以谢谢我稍后再试

hanky panky 回复 1月 前

运行后也有可能出现这个错误brew upgrade这将安装比以前安装的更新版本的mysql。

hanky panky 回复 1月 前

为我工作。 mysqld 停止然后 brew 服务启动 mysql

hanky panky 回复 1月 前

工作 – “brew 服务启动 mysql”

hanky panky 回复 1月 前

我在 Monterey 遇到了同样的问题,并尝试了此页面上的每一个建议,包括完全清除 MySQL 和数据库并重新安装。仍然收到错误。

hanky panky 回复 1月 前

检查您的mysql目录位置并为我的电脑授予类似 sudo chown -R _mysql:mysql /-your-root-directories-/mysql 的权限,它是 sudo chown -R _mysql:mysql /opt/homebrew/var/mysql 然后重新启动mysql 服务器 sudo mysql.server start

29 Answers
0
md mazedul islam khan 回答 1月 前

您需要先启动 MySQL,然后才能使用mysql终端上的命令。为此,请运行brew services start mysql.默认情况下,brew 安装 MySQL 数据库时没有 root 密码。为了确保它运行:mysql_secure_installation.
要连接运行:mysql -uroot.root是这里的用户名。

foobar 回复 1月 前

跑步sudo chown -R _mysql:mysql /usr/local/var/mysql && sudo brew services restart mysql@5.7解决了这个问题

t.woody 回复 1月 前

对于那些想知道mysql_secure_installation是一个 mariaDB 特定的脚本。

harper koo 回复 1月 前

brew services start mysql成功。但是当我跑步时mysql -uroot之后,仍然是同样的错误。

connor leech 回复 1月 前

是否有必要在 Mac 每次启动时运行它,或者一旦摆脱错误/保持 MySQL 运行或在启动时启动它就会运行它?

ahx 回复 1月 前

brew services stop mysql停止服务,对像我这样的新手很有用。

0
nirojan selvanathan 回答 1月 前

这发生在自制软件安装之后,并且由于权限问题而发生。以下命令修复了该问题。

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

sudo mysql.server start
ravi sharma 回复 1月 前

你太棒了@nirojan,我的头撞到墙上了:thumsup:

william wong garay 回复 1月 前

凉爽的。更改为另一个 mac 管理员帐户时,我可以解决我的问题 🙂

stylishcoder 回复 1月 前

太感谢了。我已经绞尽脑汁超过 5 个小时了。在互联网上看到了多个答案,只有这个有帮助。

junior gantin 回复 1月 前

赞!但是当我重新启动我的 MacBook 时,我遇到了同样的问题。

freshsnow 回复 1月 前

在我的 Mac 上,我必须chown -R myuser /usr/local/var/mysql(其中 myuser 是我的用户名)。这立即触发了一个对话框,询问是否允许 mysql 具有传入连接。

talk is cheap show me code 回复 1月 前

即使它不是来自 brew,权限问题也会发生在许多系统上。

gvanto 回复 1月 前

chown: /usr/local/var/mysql: 没有这样的文件或目录来自 brew install notes: mysql@5.7 is keg-only,这意味着它没有符号链接到 /usr/local,因为这是另一个公式的替代版本.

saran3h 回复 1月 前

我得到这个:`错误!服务器退出而不更新 PID 文件(/var/lib/mysql/Saranshs-MacBook-Pro-2.local.pid)。` 操作系统:Catalyna mysql:5.7.29

yvan 回复 1月 前

我也是:启动 MySQL 。错误!服务器退出而不更新 PID 文件 (/usr/local/var/mysql/localhost.pid)。

duy nguyen 回复 1月 前

运行命令后出现此错误The server quit without updating PID file

victor 回复 1月 前

这里没有修复。我有ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXX-XXX-XXX.local.pid)

steveexdia 回复 1月 前

在执行 mysql@5.7 的 brew 卸载然后安装 mysql@5.6 之后,此页面上的任何内容都对我不起作用,即使我完全按照 brew 的说明进行操作。在我重新启动 Mac (Big Sur) 后错误开始了。更改权限并重新启动 brew 服务无济于事。将它们改回我的用户名和组也不行。我也收到更新 PID 文件错误。我难住了。当 Big Sur 不能这样工作时,它似乎正试图从 /tmp 中提取。我不确定在哪里更新。

0
gaurav agarwal 回答 1月 前

跑:brew info mysql
并按照说明进行操作。从公式中的描述:

Set up databases to run AS YOUR USER ACCOUNT with:
    unset TMPDIR
    mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

To set up base tables in another folder, or use a different user to run
mysqld, view the help for mysql_install_db:
    mysql_install_db --help

and view the MySQL documentation:
  * http://dev.mysql.com/doc/refman/5.5/en/mysql-install-db.html
  * http://dev.mysql.com/doc/refman/5.5/en/default-privileges.html

希望这可以帮助。

0
ithar 回答 1月 前

正如其他人指出的那样,这是因为 MySQL 已安装但服务未运行。有很多方法可以启动 MySQL 服务,对我有用的方法如下。
启动服务:

  1. 转到“系统偏好设置”
  2. 在底部窗格中应该有 MySql 图标。
  3. 双击它以启动“MySQL 服务器状态”并按下按钮“启动 MySQL 服务器”

我的环境:
Mac 优胜美地 10.10.3
安装包:/Volumes/mysql-advanced-5.6.24-osx10.8-x86_64

ithar 回复 1月 前

@HosMercury 你能确认你已经安装了 MySQL

spencer trinh 回复 1月 前

嗨,我也从官方网页下载并安装了 mysql,但是在首选项窗格中,服务器未激活(红点),当我单击“启动 sql server”时,它会变成“绿色”一秒钟然后变回红色,什么都没发生。我尝试了 ‘chown’ ,到 tmp/mysql.socket 的符号链接,卸载/重新安装,brew install mysql,但都失败了。 brew install 给了我一个不满意的错误,关于需要 Sierra 或更高版本的操作系统。我正在运行 el capitan。任何帮助,将不胜感激。

0
mondieki 回答 1月 前

解决方案围绕:

  • 更改 MySQL 的权限
    sudo chown -R _mysql:mysql /usr/local/var/mysql
  • 启动 MySQL 进程
    sudo mysql.server start

只是为了添加已提供的许多很棒且有用的答案这里并且来自许多不同的帖子,尝试指定主机如果上述命令没有为您解决此问题,即

mysql -u root -p h127.0.0.1
pfwd 回复 1月 前

对我来说,这是权限问题

duc chi 回复 1月 前

应该是:mysql -u root -p -h127.0.0.1

jordan 回复 1月 前

哇,比清除我所有的本地东西更好的解决方案。这是一个快速修复!

kiran ruth r 回复 1月 前

我在上面尝试过,但最终,这有效: sudo chown -R $(whoami) $(brew –prefix)/*