【发布时间】:2018-07-20 21:12:46
【问题描述】:
我正在尝试在远程 Debian 服务器上使用 mysql。我已经为 PuTTy 客户端配置了隧道:
-
Session中,主机名是远程IP地址,端口是22 - 在
SSH/Tunnels我有源端口3306和目标:127.0.0.1:3306
我点击打开,输入用户名和密码登录服务器。
但是此时我不能使用mysql。如果我在没有密码的情况下尝试:
mysql -u root -p
我收到access denied for user 'root'@localhost' (using password: NO)
我不确定这是否是因为确实需要一些密码,或者端口转发是否有问题 - 我怎么知道?
我尝试进入my.cnf 文件并将bind address 127.0.0.1 更改为远程地址,但没有任何更改。也许 mysql 需要为此重新启动,但我在尝试重新启动时被拒绝访问(相同的 mysql 错误消息)。
我可以在 puTTY 事件日志中看到它显示 "local port 3306 forwarding to 127.0.0.1:3306"。再往下一点,上面写着"Opening connection to 127.0.0.1:3306 for forwarding from 127.0.0.1:55271" - 我不知道那是什么意思?
我如何知道问题出在密码还是“@localhost”部分,端口转发是否有问题?
【问题讨论】:
-
错误提示您没有在 root 帐户上使用密码。试试
mysql -uroot -
在 MySQL 中使用 "localhost" 和 "127.0.0.1" 时要小心,它们在检查登录时的想法不同。见stackoverflow.com/questions/19712307/mysql-localhost-127-0-0-1
-
您要使用哪个 mysql 客户端? Debian 中的那个还是 Windows 中的那个?为什么需要隧道?
-
我猜是debian mysql。我认为我需要一个隧道,因为 mysql 配置为侦听 127.0.0.1。但是把“绑定地址”改成我的本地IP后,也许我不需要隧道,我不知道。
-
我的意思是把“绑定地址”改成远程IP..
标签: mysql putty remote-server portforwarding