解决Ubuntu16.04下MySQL Workbench无法通过SSH隧道转发连接数据库异常
2017-02-18 23:26
489 查看
问题出现的环境:
系统及版本:Ubuntu 16.04LTS
MySQL Workbench版本:V6.3.8及以上版本
错误信息:
Could not connect the SSH Tunnel Authentication error, unhandled exception caught in in tunnel manager, please refer to logs for details
问题出现的场景:
在MySQL Workbench下通过SSH隧道及SSH私钥文件认证来连接远程数据库,出错。
问题出现的可能原因:
当时对系统及MySQL Workbench同时作了升级操作。
解决问题:
该问题困扰了我大半天,最终在下午解决掉了。解决过程略为复杂。
通过查看Workbench的运行日志,找到异常信息如下:
14:20:19 [ERR][sshtunnel.py:notify_exception_error:234]: Traceback (most recent call last): File "/usr/share/mysql-workbench/sshtunnel.py", line 302, in _connect_ssh look_for_keys=True) File "/usr/lib/python2.7/dist-packages/paramiko/client.py", line 325, in connect t.start_client() File "/usr/lib/python2.7/dist-packages/paramiko/transport.py", line 492, in start_client raise e ValueError: CTR mode needs counter parameter, not IV
最终定位到与python第三方包python-paramiko有关。paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。之前未接触过paramiko包,所以我选择Surfing on the internet, 百度、bing、google,最后注意到一个帖子:https://bugs.mysql.com/bug.php?id=74658 楼主碰到的问题与我几乎是一样的,只不过他的问题发生2014年,环境也比我的老。最终我找到了这样一个回复 :[12 May 2016 11:35] Marcin Szalowicz
MySQL Workbench 6.3.7 will come with Paramiko 1.16.0 that has got support for more Ciphers. In any case you can always try to use the latest Paramiko version which is described here: http://mysqlworkbench.org/2015/03/paramiko-update-tutorial/
根据http://mysqlworkbench.org/2015/03/paramiko-update-tutorial/中的提示,发现原来官方是有解决方案的。只不过没有那么直接。直接说解决步骤吧:1.去网页https://github.com/paramiko/paramiko/releases下载最新的paramiko包最新的2.1.1版本并解压tar -xvf 2.用sudo apt-get --purge remove python-paramiko彻底清除旧版本的paramiko 3.进入解压好的paramiko路径并使用sudo python setup.py install来安装paramiko 4.注意:安装的过程中下载相关依赖包时可能会出现404,没关系我们可以去http://packages.ubuntu.com/zh-cn/xenial/amd64/libzip4/download中搜索并下载需 要的依赖包并利用sudo dpkg -i 来手动安装。 5.安装完成后,重装Mysql Workbench就可以正常使用了。
相关文章推荐
- C# DataGridView连接数据库,通过textBox更新数据库(解决绑定数据库后无法增加新行)
- 解决"System.AccessViolationException”类型的未经处理的异常在 未知模块(IIS Worker Process 已停止工作)导致无法连接远程数据库的问题
- MySQL通过localhost无法连接数据库的解决
- 无法通过ssh登录ubuntu及网络连接问题的解决
- 解决ASP.NET连接Oraclei数据库出现"无法加载DLL(oci.dll)"异常
- 完美解决MySQL通过localhost无法连接数据库的问题
- 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接 异常解决方法
- 异常:无法连接到 SQL Server 数据库。-解决办法
- MySQL通过localhost无法连接数据库的解决
- Mac下无法通过localhost连接数据库解决方法
- Ubuntu通过apt-get install安装mysql后pdo_mysql无法连接的解决方法
- ASP.NET配置(web.config)无法连接到SQL Server 数据库的解决方法
- PetShop4.0数据库配置 无法连接到 SQL Server 数据库(未能建立数据库连接)的解决方法
- Oracle10g出现Enterprise Manager 无法连接到数据库实例解决办法
- ASP.NET在IIS上部署使用Oracle数据库无法连接数据库解决方法(转载)
- 解决realmethods生成的程序无法连接数据库的问题
- 无法连接到 SQL Server 数据库(未能建立数据库连接)的解决方法
- 解决 web服务器部署常见问题,server application unavailable 和 程序无法连接数据库 的问题(asp.net 2.0 + oracle9i + winXP)
- ASP.NET配置(web.config)无法连接到SQL Server 数据库的解决方法
- 突然无法连接数据库了(解决了)