php mysql_connect():如何通过SSH隧道连接MySQL服务器

时间:2012-06-13 19:07:12

标签: php mysql

我的mysql服务器正在外面的某个地方托管,需要ssh才能到达那里,如何通过php连接这个服务器?以前有人遇到过同样的问题吗?

先谢谢。

2 个答案:

答案 0 :(得分:1)

我没有,但谷歌搜索我发现以下示例:

<?php
  shell_exec("ssh -f -L 3307:127.0.0.1:3306 user@remote.rjmetrics.com sleep 60 >> logfile");         
  $db = mysql_connect('127.0.0.1', 'sqluser', 'sqlpassword', 'rjmadmin', 3307);
?>
  • 您似乎首先需要设置ssh tunel(超时60秒)。这适用于操作系统级别(shell_exec);
  • 在此示例中,您创建的SSH隧道将mysql主机服务器上的 3306 端口重定向到本地端口 3307 (网络服务器);
  • 然后连接(mysql_connect),因为mysql服务器在您自己的网络服务器中,重定向到3307端口。

我无法验证此解决方案,但我希望这可以帮助您向前迈进一步。

Source

答案 1 :(得分:0)