java ssh通道连接数据库
数据库不能直接3306访问 通过ssh连接 ,转发到本地端口,代码如下import java.util.Timer;import com.jcraft.jsch.JSch;//需要一个jar包public static void go() {try {JSch jsch = new JSch();com.jcraft.jsch.Session session = jsch.getSession("
·
数据库不能直接3306访问 通过ssh连接 ,转发到本地端口,代码如下
import java.util.Timer;
import com.jcraft.jsch.JSch;//需要一个jar包
public static void go() {
try {
JSch jsch = new JSch();
com.jcraft.jsch.Session session = jsch.getSession("username",
"ip", 22);
session.setPassword("");
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
System.out.println(session.getServerVersion());// 这里打印SSH服务器版本信息
int assinged_port = session.setPortForwardingL("127.0.0.1", 6666,
"127.0.0.1", 3306);// 端口映射 转发
System.out.println("localhost:" + assinged_port);
} catch (Exception e) {
e.printStackTrace();
}
}
连接数据库的时候对应刚才设置的端口
String URL = "jdbc:mysql://127.0.0.1:6666/nrtest?characterEncoding=utf-8&serverTimezone=UTC";
String USER = "username";
String PASSWORD = "password";

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)