MySQLWorkbench使用SSH Tunnel连接MySQL数据库

现在连接一个IDC的MySQL服务器时,由于网络的隔离性,需要ssh到一台跳板机上才能直接访问MySQL,而我想在本地使用MySQLWorkbench这样的客户端直接连接到MySQL中。其解决方案是,先用ssh命令建立一个SSH Tunnel,然后MySQLWorkbench只需要连接本地的一个端口,即可与对应的远程MySQL建立连接。

假设跳板机为:192.168.1.1 (它可以与MySQL连通)
MySQL IP为:10.1.0.58 端口为:3306
建立SSH Tunnel的命令如下:

 代码如下 复制代码

# 建立SSH Tunnel
jay@Jay-Air:~ $ssh -f jay@192.168.1.1 -L 2001:10.1.0.58:3306 -N
Warning: Permanently added '192.168.1.1' (RSA) to the list of known hosts.
jay@192.168.1.1's password:
 
# 查一下在后台运行的ssh进程
jay@Jay-Air:~ $ps -ef | grep 'ssh -f' | grep -v grep
  501  9729 1   0  6:10PM ??  0:00.19 ssh -f jay@192.168.1.1 -L 2001:10.1.0.58:3306 -N

ssh命令中,-f 表示让ssh在执行命令(这里没有配置执行任何命令)之前进入后台运行状态; -L 指定本地的一个端口(如这里的2001),它将会被转发到远程IP的一个端口(如:10.1.0.58:3306);-N 表示不执行远程命令,对于只做端口转发的场景非常有用。

在MySQLWorkbench中,将原来连接MySQL的IP和端口,配置为设置的本地SSH Tunnel即可(这里设置的是:localhost:2001)

另外,参考资料中的第二个,讲了如何在putty中设置建立SSH Tunnel。

http://www.revsys.com/writings/quicktips/ssh-tunnel.html

http://davidngos.blogspot.com/2013/06/how-to-use-mysql-workbench-behind.html

时间: 2024-11-20 13:52:46

MySQLWorkbench使用SSH Tunnel连接MySQL数据库的相关文章

mysql-JDBC 通过SSH Tunnel连接MySQL数据库

问题描述 JDBC 通过SSH Tunnel连接MySQL数据库 JDBC 通过SSH Tunnel连接MySQL数据库,在获取connection 的时候总是报查询信息太多,是怎么回事? 具体信息如下:Exception in thread "main" com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4739923 > 1048576). You can change this valu

c# 使用ssh 密钥-c# 使用SSH(密钥)方式连接MySql数据库

问题描述 c# 使用SSH(密钥)方式连接MySql数据库 最近在用WPF连接MySql,由于安全升级.需要通过SSH和密钥的方式来访问数据库. 求各位达人提供相关资料.谢谢~

mysql-关于NetBeans远程连接Mysql数据库的问题(非局域网)

问题描述 关于NetBeans远程连接Mysql数据库的问题(非局域网) 我用netbeans写了一个应用程序,需要连接mysql,已经实现了本地和局域网内数据库的连接问题,我现在想知道怎么远程访问非局域网的mysql数据库. 听说什么端口映射.VPN.... 对,我还下载了nat123,不知道会不会有用. 先谢谢各位大神了!!!! 解决方案 首先利用ssh把远端服务器上mysql端口映射到本地: ssh -C -f -N -g -L 3307:127.0.0.1:3306 root@rserv

mysql-Android想通过web service连接MySQL数据库

问题描述 Android想通过web service连接MySQL数据库 之前采取的是直接连接的方式,发现这种连接连不上,说直接连接不安全,现在想改为通过哦web service 接口连接,因为现在还是新手,不知道要怎么弄,请各位大神支支招! 解决方案 不能直接链接,需要做一个web服务,你通过http接口提交请求到服务,服务再去访问数据库 解决方案二: 你应该是去访问服务器的接口,让这个接口去访问MYSQL数据库,然后返回数据给你. 解决方案三: 访问服务器接口,服务器返回数据给你 解决方案四

insert-jsp语言如何连接mysql数据库

问题描述 jsp语言如何连接mysql数据库 jsp语言如何连接mysql数据库,进行表的增删改查?OA系统设计连接数据库,mysql驱动包在哪儿下载? 解决方案 在页面嵌入脚本代码,然后和在java中操作一样.只是,为什么要在页面上操作呢?这样页面编码可读性变得很糟糕,而且对于后期维护影响非常不好.最主要的是,这么设计没有主次,没有模式,对于横向扩展或者代码复用性都很不好. 解决方案二: jsp连接mysql数据库JSP 连接MYSQL数据库JSP连接MYSQL数据库 解决方案三: 建议你搜索

jsp连接mysql数据库大全

js|mysql|数据|数据库 初学jsp的网友经常会问数据库怎么连接啊,我集中的在这写篇文章供大家参考, 现在开始我们的jsp和数据库之旅吧! ●jsp连接MySQL数据库 testmysql.jsp如下: <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.sql.*"%> <html> <body> <%Class.

ASP连接MYSQL数据库教程示例

ASP连接MYSQL数据库 首先要在服务器上安装mysql odbc 3.51 ,还有数据库用户名及密码,实现代码示例如下. 以下是源代码:<%  strconnection="driver={mysql odbc 3.51 driver};database=weste_net;server=localhost;uid=root;password=" set conn = server.createobject("adodb.connection")  con

轻松应对JSP连接MySQL数据库问题

当您面临JSP连接MySQL数据库问题,你首先需要在MySQL数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据. 以下用两种方式来实现JSP连接MySql数据库 第一种方式,用JSP实现: <%@ page contentType="text/html; charset=gb2312" language="java"  import="java.sql.*"%><m

实现JSP连接MySql数据库的两种方式

js|mysql|数据|数据库 当您面临JSP连接MySQL数据库问题,你首先需要在MySQL数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据. 以下用两种方式来实现JSP连接MySql数据库 第一种方式,用JSP实现: <%@ page contentType="text/html; charset=gb2312" language="java"  import="java.sql.*