Heim >Datenbank >MySQL-Tutorial >Wie kann ich mit Java über einen SSH-Tunnel eine Verbindung zu einer Remote-MySQL-Datenbank herstellen?
SSH-Tunneling mit Java für Remote-MySQL-Datenbank-Konnektivität
Die Verbindung zu einer Remote-MySQL-Datenbank über einen SSH-Tunnel mithilfe von Java ist ein effektiver Ansatz besteht darin, die JSch-Bibliothek zu nutzen. Mit dieser Bibliothek können Sie SSH2-Verbindungen herstellen und verschiedene Funktionen wie die Portweiterleitung nutzen.
Stellen Sie sich ein Szenario vor, in dem Sie remote auf einen MySQL-Server zugreifen möchten, der Port 3306 überwacht. Von Ihrem lokalen Computer aus können Sie SSH einrichten Tunneln Sie mit JSch wie folgt:
import com.jcraft.jsch.*; public class SSHMySQLTunnel { public static void main(String[] args) throws Exception { // Replace with SSH server hostname String sshHost = "ssh.server.com"; // SSH port number int sshPort = 22; // Replace with SSH username String sshUsername = "username"; // Replace with SSH password String sshPassword = "password"; // Replace with MySQL server hostname String mysqlHost = "mysql.server.com"; // MySQL port number (assuming 3306) int mysqlPort = 3306; // Local port to forward to (1234 in this example) int localPort = 1234; JSch jsch = new JSch(); Session session = jsch.getSession(sshUsername, sshHost, sshPort); session.setPassword(sshPassword); session.connect(); int assingedPort = session.setPortForwardingL(localPort, mysqlHost, mysqlPort); System.out.println("SSH tunnel established. Forwarded port " + localPort + " to " + mysqlHost + ":" + mysqlPort); // Establish JDBC connection to MySQL using the tunnel String jdbcUrl = "jdbc:mysql://localhost:" + localPort + "/[database]"; // ... } }
Sobald der SSH-Tunnel eingerichtet ist, können Sie wie gewohnt eine JDBC-Verbindung zu MySQL über den lokalen Port nutzen (1234) im SSH-Tunnel angegeben.
Das obige ist der detaillierte Inhalt vonWie kann ich mit Java über einen SSH-Tunnel eine Verbindung zu einer Remote-MySQL-Datenbank herstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!