我可以使用GUI工具SSH到MySQL吗?

时间:2009-05-13 17:10:24

标签: mysql linux ubuntu ssh firewall

我有一个ubuntu服务器,我只锁定了HTTP,HTTPS和SSH(端口30000)。在这个盒子里,我有一个MySQL服务器,99.9%的时间只在本地使用。我不时地想用GUI工具连接MySQL实例,但不要碰到防火墙。

因此,可以进行设置以便我可以通过SSH连接连接到MySQL框?我可以做任何类型的端口转发魔术吗?

6 个答案:

答案 0 :(得分:12)

ssh -L localport:127.0.0.1:remoteport user@remotehost

其中localport是本地系统上的未绑定端口,remoteport是MySQL侦听的端口,127.0.0.1是远程系统上的环回地址user是您的用户名,remotehost是远程系统的地址。

然后将您的MySQL客户端指向127.0.0.1:localport。连接将通过SSH隧道转发到远程端口。

答案 1 :(得分:4)

如果您在本地计算机上使用Windows或Unix,PuTTY是一个很好的工具。这是一个关于端口转发的教程:

http://www.cs.uu.nl/technical/services/ssh/putty/puttyfw.html

答案 2 :(得分:3)

使用SSH客户端设置隧道,将本地端口通过隧道映射到远程计算机上的端口,然后使用客户端连接到本地端口。

man ssh会有详细的信息,但你可能最好在网上搜索一些更容易阅读的内容。

答案 3 :(得分:2)

如果你在Windows上,我建议使用HeidiSQL。它自己处理SSH隧道(您只需要下载plink.exe实用程序)。

在我看来,它是最好的MySQL工具(它是免费和开源的)。

答案 4 :(得分:0)

有两种方法可以在远程MYSQL机器上使用GUI mysql工具。

我假设远程机器正在运行linux。

选项1。

SSH端口转发。

ssh -L 3306:proxy:3306 username @ remotehost

基本上,您将本地计算机上的端口3306转发到远程计算机上的3306,然后告诉您的图形MYSQl工具连接到localhost:3306,并假设您的远程计算机正在侦听标准端口3306

http://magazine.redhat.com/2007/11/06/ssh-port-forwarding/

ssh -D 3306用户名@ remotehost也应该类似

选项2。

如果您在远程计算机上运行xserver并在远程计算机上安装了GUI工具,则可以通过SSH连接对GUI进行隧道传输。

ssh -X username @ remotehost然后从命令行在远程计算机上启动GUI工具。

答案 5 :(得分:-1)

我建议寻找phpMyAdmin a web based tool to administrate MySQL,并且非常好(需要PHP)。它可以通过普通的Ubuntu方法安装(例如Synaptic)

或者如上所述使用SSH进行X隧道传输。