gpt4 book ai didi

linux - 从另一个 linux 服务器连接 linux 平台中的 postgres 服务器

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:03:35 24 4
gpt4 key购买 nike

我已经将我的 jsp 文件放在一个服务器上,我必须从那里通过 ssh 连接到另一个 linux 服务器,然后连接到 postgres 服务器。我们没有外部 IP 地址可以直接连接。这就是为什么这看起来很复杂。至少对于我来说。这是我的 jsp 的第一个连接部分。

<%@ page language="java" import="java.sql.*" %>
<%@page import="java.io.*"%>

<%
String driver = "org.postgresql.Driver";
String url = "jdbc:postgresql://10.254.147.162/dbac";
String username = "postgres";
String password = "postgres";
String myDataField = null;

Connection myConnection = null;
PreparedStatement myPreparedStatement = null;
ResultSet rst = null;
Class.forName(driver).newInstance();
myConnection = DriverManager.getConnection(url,username,password);
.
.
.

在这里,我必须连接到 IP 内部地址为 10.0.90.1 到 10.254.147.162 的 postgres 服务器。

请告诉我如何从 10.254.147.162 ssh 到

最佳答案

您应该在程序之外处理 ssh。

在 Linux 中使用以下命令建立到数据库的 ssh 隧道:

ssh -fN -L5444:10.0.90.1:5432 10.254.147.162

这将建立一条从本地主机端口 5444 到 10.0.90.1 上的 postgres 数据库的隧道。然后,将您的 url 定义更改为:

String url = "jdbc:postgresql://localhost:5444/dbac";

您可以为 5444 选择您喜欢的任何值。例如,这还允许您设置端口 5444 以连接到您的生产数据库,并设置端口 5445 以连接到其他机器上的测试数据库。

关于linux - 从另一个 linux 服务器连接 linux 平台中的 postgres 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16591046/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com