Can';t使用SequelPro连接到MySQL

Can';t使用SequelPro连接到MySQL,mysql,sequelpro,Mysql,Sequelpro,我最近在运行El Capitan的iMac上安装了MySQL 5.7.16。最初我有一些小问题,因为我忘记了root密码,但现在已经重置了,我现在可以使用以下命令以root用户身份登录MySQL: $ mysql -u root -p 但是,当我尝试使用SequelPro以root用户身份连接到MySQL服务器时,我收到了以下消息: Unable to connect via the socket, or the request timed out. Double-check that th

我最近在运行El Capitan的iMac上安装了MySQL 5.7.16。最初我有一些小问题,因为我忘记了root密码,但现在已经重置了,我现在可以使用以下命令以root用户身份登录MySQL:

$ mysql -u root -p
但是,当我尝试使用SequelPro以root用户身份连接到MySQL服务器时,我收到了以下消息:

Unable to connect via the socket, or the request timed out.

Double-check that the socket path is correct and that you have the necessary privileges, and that the server is running.

MySQL said: Your password has expired. To log in you must change it using a client that supports expired passwords.

当我在/tmp文件夹中查找时,我希望找到mysql.sock,但实际上有一个名为mysql.sock.lock的文件。这会导致问题吗?我找不到.lock文件的来源,我不知道该怎么办。任何帮助都将不胜感激。

您可以尝试通过Sequel Pro的标准连接,使用127.0.0.1作为主机进行连接,而不是使用套接字连接。

我不完全确定是什么原因导致根密码过期,但有什么东西在工作中抛出了一个扳手。无论如何,我的解决方案是从终端登录MySQL,使用:

$ mysql -u root -p
…然后使用以下命令更改根用户的密码:

> ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPass';

这似乎奏效了。然后,我就可以使用Sequel Pro毫无问题地登录MySQL了。

5.7文档这样说:

安装过程仅创建一个根帐户“root”@“localhost”,自动为此帐户生成随机密码,并将密码标记为过期。MySQL管理员必须使用随机密码以root用户身份连接,并分配新密码。(服务器将随机密码写入错误日志。)


所以,从终端连接并更改根密码。

您的第一个密码可能没有保存,或者根本就没有保存。 对我来说,
sudo/usr/local/bin/mysql\u secure\u安装可能从未正确保存密码。由于您的第一个密码从未更改,因此没有密码,或者,正如您的错误所说,“过期”为零


运行或重新运行上面的代码,不要在密码字段中键入任何内容,并按照预加载的安装程序中的步骤操作。

他还需要为root@“127.0.0.1”设置根密码。默认情况下,root有两个条目-localhost和127.0.0.1。编辑:假设SequelPro与DB在同一台机器上运行。如果没有,则需要设置远程用户帐户和密码。是的,SequelPro正在同一台计算机上运行。我尝试过连接127.0.0.1,但仍然没有乐趣。SequelPro可以毫无问题地连接到在不同机器上运行的MySQL。您是否尝试过关闭并再次打开它?OP说他确实登录并更改了根密码。谢谢!将密码更改为新密码也解决了这个问题-现在我可以使用SequelPro连接到本地mysql。这绝对不是一个显而易见的解决办法。