MySQL无法通过SSH隧道连接 – 连接被拒绝

我正尝试使用SSH隧道从我的MySQL GUI(Sequel Pro,如果有要求)连接到MySQL。 但是,我不断收到以下错误(mysql.log):

[注意]中止连接98到db:'example'user:'example_user'host:'localhost'(读取通信包时出错)

我的连接设置如下所示:

  • SSH主机:example.com
  • SSH端口:22
  • SSH用户:example_user
  • SSH通行证:********
  • 数据库主机:127.0.0.1
  • 数据库用户:example_user
  • 数据库密码:*******
  • 数据库名称:例子
  • DB端口:3306

我可以连接到SSH没有问题。 我也可以从SSH里面连接MySQL(使用mysql -u example_user -p -h 127.0.0.1

但是,隧道不工作。 我在sshd_config中有AllowTcpForwarding yes 。 MySQLconfiguration有bind-address = 127.0.0.1

我在我的服务器中使用16.04 LTS和MySQL社区版。

我究竟做错了什么? 这是我第一次看到这个问题。

  • 你如何使用apt-get在Ubuntu上只安装重要的安全更新?
  • 如何确定Debian / Ubuntu上的JAVA_HOME?
  • 尝试使用公钥(无密码)获取SSH +谷歌authentication工作在Ubuntu 14.04.1
  • Linux上的ntp服务,重启后不运行
  • 我可以(几乎)阻止访问我的国家的SSH端口?
  • 授权KeeFile行注释掉,但似乎仍然工作
  • One Solution collect form web for “MySQL无法通过SSH隧道连接 – 连接被拒绝”

    您可以通过示例在工作站上通过命令创build多个隧道:

     ssh -L 10080:127.0.0.1:80 -L 10006:127.0.0.1:3306 user@server 

    有: 127.0.0.1 – ip地址隧道的目的地连接从服务器, 803306目的地端口, 1008010006 – 本地工作站的端口。 这将允许您通过服务器的本地主机接口连接到MySql服务器和Http服务器。 在工作站上运行命令mysql -p -u db_user -P 10006 -h 127.0.0.1 database_name连接到MySql服务器。 您可以连接到PhpMyAdmin Web界面,该界面只能从127.0.0.1开始。 要做到这一点,只需在您的浏览器中写入地址http://127.0.0.1:10080

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.