SSH的java.sql.Connection扩展

我在防火墙后面有一个MySQL数据库,只能通过SSH连接访问。 有谁知道java.sql.Connection的实现,它允许我建立到这个数据库的SSH连接?

您可以使用SSH的端口转发来执行此操作。 虽然不是纯java.sql.Connection,但它允许您通过ssh隧道连接。

  ssh -L 3306:localhost:3306 remote.mysql.host.com 

这会将本地计算机上的端口3306转发到remote.mysql.host.com上的端口3306。 这将允许您连接到本地计算机上的端口3306,它将被隧道传输到remote.mysql.host.com。

如果您希望在Java中完成所有操作,请使用JSch创建ssh连接。

以下是使用库sshj的示例 。