SqlnontransientConnectionException: Socket kann keine Verbindung zum Host herstellen. Fehler beim Versuch, eine Verbindu
Posted: 05 Feb 2025, 04:12
Ich habe ein Problem, während ich aus meiner Arbeit mit Java eine Verbindung zu einer entfernten Mariadb -Datenbank herstellen kann. Ich muss eine SSH -Verbindung verwenden.
Es fällt in triverManager.getConnection () Teilen Sie mit dem Fehler ein: (Typ = primär). Datenbank . Versuch, dieses Problem zu lösen, habe ich verschiedene Arten von Lösungen ausprobiert. in TribleManager.getConnection () Methode: < /p>
Irgendwelche Vorschläge, wie man dies löst?
Code: Select all
com.github.mwiede
jsch
0.2.11
< /code>
Und ich verwende für die Verbindung mit MariadB die Abhängigkeit: < /p>
org.mariadb.jdbc
mariadb-java-client
3.1.4
< /code>
Ich kann mit dem Server eine Verbindung mit dem Server mit JSCH mit dem folgenden Code herstellen: < /p>
JSch jsch = new JSch();
jsch.setKnownHosts(System.getProperty("user.home")+"/.ssh/known_hosts");
jsch.addIdentity(publicKey);
session = jsch.getSession(sshUserName, sshServer, remoteSSHPort);
session.setConfig("StrictHostKeyChecking", "yes");
session.connect();
< /code>
Aber wenn ich versuche, mit diesem Code eine Verbindung mit der Datenbank herzustellen, < /p>
public Connection connectToDB() throws Exception {
int assignedPort = session.setPortForwardingL(localPort,serverHost,remoteSSHPort);
String url = "jdbc:mariadb://" + serverHost + ":" + assignedPort + "/" + database;
return DriverManager.getConnection(url,userSQL,passwordSql);
}
-
Code: Select all
getConnection(String url, String user, String password)
-
Code: Select all
getConnection(String url)
-
Code: Select all
getConnection(String url, java.util.Properties info)
Code: Select all
while(session.isConnected()){
Connection connection = connectToDB();
System.out.println("connected to DB...");
Statement statement = connection.createStatement();
}