Невозможно подключиться к PostgreSQL из любого места, кроме SSH - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть SSH-соединение с удаленным сервером с PostgreSQL, которое я хочу использовать в своем коде для вставки / обновления данных.Я могу подключиться к нему через соединение с базой данных (В IntelliJ справа -> База данных).Но как выполнить запросы к этой базе данных, используя только это соединение SSH?Теперь я пытаюсь получить к нему доступ через Driver:

postGresConn = DriverManager.getConnection(dbURL, dbUsername, dbPassword);

И использую его так:

private void loadPostgreDriver() {
    try {
        Class.forName("org.postgresql.Driver");
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }
}

private void getConnection() {
    try {
        postGresConn = DriverManager.getConnection(dbURL, dbUsername, dbPassword);
    } catch (SQLException e) {
        e.printStackTrace();
    }
}

public LinkedList<LinkedList<String>> queryDB(String query) {
    LinkedList<LinkedList<String>> result = new LinkedList<LinkedList<String>>();
    Statement statement = null;
    ResultSet resultSet = null;

    try {
        statement = postGresConn.createStatement();
        resultSet = statement.executeQuery(query);
    /*** More code here ***/
    }
}

Но мой postgresConnnне удается, потому что я пытаюсь подключиться к нему без SSH, я думаю.Как это решить?

1 Ответ

0 голосов
/ 27 ноября 2018

Для подключения к удаленной базе данных Postgres не требуется ssh-соединение.

SSH-соединения могут использоваться для удаленного выполнения командной строки или, в некоторых случаях, для туннелирования трафика TCP / IP.

Как я понимаю, в вашем случае порт Postgres, 5432 на удаленном хосте, уже открыт, поскольку вы можете подключиться с помощью IntelliJ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...