无法使用命令行连接MySQL,但可以使用MySQL Workbench。

6

我成功地使用MySQLWorkbench访问和管理位于127.0.0.1:3307的数据库。

然而,如果我尝试使用命令行访问它:

mysql -u admin -h 127.0.0.1:3307 -p

我收到了错误信息:
ERROR 2005 (HY000): Unknown MySQL server host '127.0.0.1:3307' (0)

为什么在MySQLWorkbench中可以使用,而在命令行中却不行?

我在OSX上运行。


只需从主机定义中删除端口即可。如果这不起作用,请改用localhost而不是127.0.0.1。 - Lelio Faieta
你在同一台计算机上运行命令行和工作台吗?你是否安装并配置了个人防火墙? - Shadow
是的,它在同一台计算机上,没有防火墙。 - Bill Noble
2个回答

7
因为MySQLWorkbench会解析端口号,而CLI工具不会。因此需要使用单独的选项--port来提供它。请尝试使用。
mysql --user admin --host 127.0.0.1 --port 3307 --password

感谢您解决了访问问题。现在它无法接受密码,但那是另一个问题 :) - Bill Noble

5

尝试指定连接协议

mysql -uroot -h127.0.0.1 -p --port=3307 --protocol=tcp

mysql -uroot -h127.0.0.1 -p --port=3307 --protocol=socket

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接