首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未能用“127.0.0.1”连接到续集Pro,但可以通过终端与“localhost”连接

未能用“127.0.0.1”连接到续集Pro,但可以通过终端与“localhost”连接
EN

Stack Overflow用户
提问于 2021-07-10 15:27:10
回答 1查看 757关注 0票数 1

我在Docker上运行了一个项目,我能够通过终端连接到数据库:

代码语言:javascript
运行
复制
mysql -h localhost -P 33060 --protocol=tcp -u 'notmyrealusername' -p 

这很好,我可以从数据库中显示这些表。

但是,当试图通过SequelPro进行连接时,我会得到以下错误:

代码语言:javascript
运行
复制
Unable to connect to host 127.0.0.1, or the request timed out.

Be sure that the address is correct and that you have the necessary privileges, or try increasing the connection timeout (currently 10 seconds).

MySQL said: Protocol mismatch; server version = 11, client version = 10

请注意,该项目运行在MySQL 5.7.34上,我的计算机上的版本为8.0.23。

操作系统: Mac

我尝试过的:

这条线中,我也尝试过使用2200端口,而且SequelPro不允许我使用127.0.0.1。所以,我不能再试第二个了。

我还授予了'notmyrealusername'@'127.0.0.1‘和'notmyrealusername'@'localhost’的所有特权,但这似乎也没有解决这个问题。

回答菲利普的问题:

  • 是的,如果我尝试mysql -h 127.0.0.1,那么我会得到相同的错误:

错误2007 (HY000):协议不匹配;服务器版本= 11,客户端版本= 10

问题:是否有人知道如何连接到“localhost”而不是SequelPro上的'127.0.0.1‘,或者为什么我似乎无法连接到SequelPro上的数据库,而使用相同的数据,我可以很容易地通过终端连接?

谢谢你所能提供的所有帮助/建议!

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-07-12 16:58:13

我终于找到了解决办法。对于任何想知道的人来说,这里的关键是我使用的是码头。在这种情况下,如这个论坛帖子所述,我们需要:

使用正在运行数据库的机器的IP地址(真正的数据库,而不是本地主机)作为主机地址。

怎么做?

  • 转到您的终端并使用命令ifconfig。您将得到一堆数据,但您要寻找的是本地网络IP地址。这通常看起来像192.x.x.x10.x.x.x
  • 然后,在续集Pro或任何您正在使用的GUI中,使用此地址(192.)而不是本地主机。

我希望这能帮到别人,帮你节省时间:)

编码愉快!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68329088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档