通过SSH隧道访问SQL

时间:2017-10-01 16:27:28

标签: mysql sql localhost

嘿伙计们,所以我有这个奇怪的错误。 所以我创建了一条从远程计算机到我的隧道。 SQL在端口3306上的移除PC上运行 我的隧道配置

ssh -N -L 33307:127.0.0.1:3306 something.something.com

这意味着来自远程PC端口3306的有效流量将被定向到我的Mac的33307 127.0.0.1端口。 现在的问题是

mysql -u user -phfkahfkz -p 33307

不工作,给用户@ localhost错误

mysql -u user -phfkahfkz -p 33307 -h 127.0.0.1工作正常

我的主机文件已经

127.0.0.1 localhost

我尝试添加

localhost 127.0.0.1

我对最近发生的事情一无所知

另一个问题,所以当我有效地创建隧道时,我不需要在我的Mac上安装sql吗?我虽然可能尝试连接到我的本地sql副本,所以我停止了SQL在本地运行和

mysql -u user -phfkahfkz -p 33307

mysql -u user -phfkahfkz -p 33307 -h localhost

都给出了一个无法连接到本地MySQL服务器

mysql -u user -phfkahfkz -p 33307 -h 127.0.0.1

正常运行本地SQL服务

1 个答案:

答案 0 :(得分:1)

在MySQL中,localhost与127.0.0.1不同。

Localhost被特别处理,意味着它根本不使用TCP / IP,但尝试通过套接字文件与MySQL的本地实例通信。

您必须明确使用127.0.0.1。

阅读https://dev.mysql.com/doc/refman/5.7/en/connecting.html了解详情。