最近给一个朋友做服务器配置,他买的一个独立的服务器,因为服务器商防火墙的设置,很多网络访问都被禁用(比如Ping, 怀疑他们的能力);
我想让朋友用GUI工具直接访问远程数据库,不过可恶的是尽管配置了Mysql 服务器绑定远程地址,还是不能访问;尝试用 SSH 隧道来代理访问了;
执行这条命令:
ssh -L 3306:localhost:3306 romote_user@remote_server_address
语法是: ssh -L <localport>hostname<remoteport> <username>@<servername>
这条命令的含义是将localhost:port 的请求重定向到绑定的地址:port
(所以如果本地安装了Mysql 监听着3306端口,那把本地端口配置改成其他的;)
再链接一下远程的服务器吧:
mysql --host=localhost --port=locate_port --user='user' --password='pass'
执行命令后, SSH 会把这个请求重定向到服务器上;