前言:
在最近的工作中,需要通过ssh的方式远程连接数据库,jdbc默认的连接方式是tcp/ip。查阅资料,发现java可通过JSch实现ssh的端口转发, 从而实现数据库的连接,这里记录一下具体实现过程。
思路:
1.本地和远程建立ssh连接通道;
2.设置ssh本地端口转发,本地转发到远程;
3.通过访问本地的转发端口,实现和远程的数据库建立连接
建立ssh连接通道核心代码
JSch jsch = new JSch();
Session session = null;
try {
session = jsch.getSession(user, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
// step1:建立ssh连接
session.connect();
} catch (Exception e) {
if (null != session) {
//关闭ssh连接
session.disconnect();
}
e.printStackTrace();
}
本地端口转发核心代码:
//step2: 设置SSH本地端口转发,本地转发到远程
int assinged_port = session.setPortForwardingL(lport,

本文介绍了如何使用Java的JSch库通过SSH建立连接,并进行端口转发,以此来连接并访问远程MySQL数据库。详细步骤包括设置SSH连接、本地端口转发以及配置数据库URL,提供了一个SSHService.java的示例代码。
最低0.47元/天 解锁文章
194

被折叠的 条评论
为什么被折叠?



