使用 SSH 隧道通过“本地主机”连接到远程 mysql 服务器


Use SSH tunneling to connect to a remote mysql server using "localhost"

嘿,我对这种事情有点陌生,我希望标题有意义。

基本上,我有一个在LAMP堆栈上运行的mysql服务器,其中包含一些平均的遗留代码,通过该代码,所有与数据库的连接都使用mysql_connect("localhost", "user", "pass")。(我知道这很糟糕,我不是写的!

我想运行我自己的本地版本的网站进行调试/开发,但我无法弄清楚如何连接到我们的数据库(我们有一个远程运行的测试数据库,每天都会使用实时数据进行更新)。我尝试过远程连接,但我无法弄清楚。

想知道我是否保留代码(写入"localhost"连接),并使用某种 SSH 隧道来"欺骗"代码连接到远程数据库?或者在我的本地机器上设置某种 mysql"服务器"会更容易吗?使用 phpstorm 内置的"数据库"功能,我设法使用 ssh 隧道连接到我们的数据库,但从那里我完全迷失了。我又是新手,所以如果这听起来很幼稚,我深表歉意。

任何解决方案的帮助都会很棒。

如果你在Linux上,你必须在客户端和服务器上安装Stunnel。

看看这里: https://blog.thesysadmins.co.uk/using-stunnel-to-encrypt-unsecure-connections.html

通过正确配置Stunnel,您将能够将mysqli_connect与"locahost"一起使用,同时实际引用远程服务器。