如何通过 SSH 隧道从 Windows 进入 Linux 并进入 MySQL

如何通过 SSH 隧道从 Windows 进入 Linux 并进入 MySQL

我在本地计算机上使用 Windows,并使用 Putty 到 SSH 来本地访问临时数据库。我需要在 Windows 上使用 Python/MySQL 连接器连接到 MySQL,该连接器通过 Linux/Putty SSH 然后连接到 MySQL。我认为我需要一个反向隧道,但我不太确定如何配置它。

我有网络信息,我只是想知道如何为其声明 SSH 命令?另外,我使用的是 Windows 8,但我刚刚收到建议改用 Windows 10。

谢谢

答案1

本质上,您的目标是在本地计算机上打开一个 TCP 端口,该端口连接到远程计算机上运行的 MySQL 数据库;通过 SSH 传输流量。

我假设您已经可以通过 SSH 连接到删除计算机;这是一个不同的问题。我没有 Windows,所以对我来说很简单,但以下是如何在 Putty 中设置隧道:https://the.earth.li/~sgtatham/putty/0.67/htmldoc/Chapter3.html#using-port-forwarding

要配置隧道,您需要...

  1. 了解 MySQL 正在侦听的端口。
  2. 选择要连接的本地端口(如果本地没有运行 MySQL,则可以使用相同的端口号。

隧道打开后,在 Python 中配置 MySQL 连接以使用当地的港口。

例如,如果您正在连接 MySQL 客户端,则命令将如下所示:mysql -uUSER -pPASSWORD --port LOCAL_PORT DATABASE。这将与 localhost 建立连接,SSH 将拦截该连接并将其转发到远程 MySQL 实例。

相关内容