连接Mysql Workbench Vagrant

时间:2014-11-30 15:00:54

标签: mysql ssh

我使用的是OSX,我有问题将MySQL工作台连接到我的流浪者。

我有这个配置:

config

vagrant密码是vagrant,mysql密码是root

我有这个错误

error

我真的不知道错误是在mysql连接还是ssh连接上

ssh vagrant@33.33.33.15有效

MySQL工作台连接到ssh

时出错
14:58:42 [INF][     SSH tunnel]: Existing SSH tunnel not found, opening new one
14:58:42 [INF][     SSH tunnel]: Opening SSH tunnel to 33.33.33.15
14:58:42 [ERR][sshtunnel.py:notify_exception_error:233]: Traceback (most recent call last):
  File "/Applications/MySQLWorkbench.app/Contents/Resources/sshtunnel.py", line 257, in _connect_ssh
    self._client.load_host_keys(os.path.expanduser(ssh_known_hosts_file))
  File "/Applications/MySQLWorkbench.app/Contents/Resources/libraries/paramiko/client.py", line 176, in load_host_keys
    self._host_keys.load(filename)
  File "/Applications/MySQLWorkbench.app/Contents/Resources/libraries/paramiko/hostkeys.py", line 155, in load
    e = HostKeyEntry.from_line(line)
  File "/Applications/MySQLWorkbench.app/Contents/Resources/libraries/paramiko/hostkeys.py", line 67, in from_line
    key = RSAKey(data=base64.decodestring(key))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/base64.py", line 321, in decodestring
    return binascii.a2b_base64(s)
Error: Incorrect padding

14:58:42 [INF][     SSH tunnel]: TunnelManager.wait_connection returned OK
14:58:42 [INF][sshtunnel.py:set_keepalive:471]: SSH KeepAlive setting skipped.
14:58:42 [INF][     SSH tunnel]: SSH tunnel connect executed OK

我已经尝试在我的流浪注释bind-address上编辑my.cnf,或者将bind-address设置为0.0.0.0,但我遇到同样的问题。

编辑:我在真实服务器上有同样的错误

2 个答案:

答案 0 :(得分:2)

今天我遇到了同样的问题,并将其追溯到我的〜/ .ssh / known_hosts文件中的攻击性条目。

解决此问题的方法是将〜/ .ssh / known_hosts移动到〜/ .ssh / known_hosts_test,然后再次在MySQL Workbench中尝试连接。

我发现我最近连接的主机给我留下了一个MySQL工作台并不喜欢的known_hosts条目。日志中的错误消息与您的相同,只是删除known_hosts中的最后几个条目为我解决了这个问题。

干杯!

答案 1 :(得分:2)

这可能是由于底层paramiko python lib不兼容,不支持服务器的新密钥交换方法(即ECDH)......

不幸的是,直到今天,MySQL-dev还没有升级他们的lib。

可能的解决方法是自己创建ssh隧道:

ssh -L 3306:localhost:3306 vagrant@33.33.33.15

然后通过MySQL-Workbench直接连接到localhost:3306