【发布时间】:2021-09-20 12:59:17
【问题描述】:
我有一个在 Docker 上运行的项目,我可以通过终端连接到数据库:
mysql -h localhost -P 33060 --protocol=tcp -u 'notmyrealusername' -p
这很好用,我可以显示数据库中的表。
但是,当尝试通过 SequelPro 连接时,我收到以下错误:
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 OS Catalina
我尝试过的:
来自this thread,我也尝试过使用2200 的端口,而且,SequelPro 不会让我使用 127.0.0.1。所以,我无法尝试第二个。
我还向 'notmyrealusername'@'127.0.0.1' 和 'notmyrealusername'@'localhost' 授予了所有权限,但这似乎也没有解决问题。
回答菲利普的问题:
- 是的,如果我尝试
mysql -h 127.0.0.1,我会得到同样的错误:
ERROR 2007 (HY000):协议不匹配;服务器版本 = 11,客户端 版本 = 10
问题: 有谁知道如何在 SequelPro 上连接到“localhost”而不是“127.0.0.1”,或者为什么我似乎无法在 SequelPro 上连接到这个数据库,当使用相同的数据时,我可以通过终端轻松连接?
提前感谢您提供的所有帮助/建议!
谢谢!
【问题讨论】:
-
你试过
mysql -h 127.0.0.1,或者配置Sequel Pro使用localhost吗? -
感谢您的回复@Philippe。我试过
mysql -h 127.0.0.1,但我得到同样的错误ERROR 2007 (HY000): Protocol mismatch; server version = 11, client version = 10你如何配置Sequel Pro 以使用本地主机?如果我尝试,它会促使我使用套接字连接或 127.0.0.1