Rozumiem, że chcesz uzyskać dostęp do serwera mysql działającego na zdalnej maszynie i nasłuchiwać na, powiedzmy, porcie 3306 przez tunel SSH.
Aby utworzyć taki tunel z portu 1234 na komputerze lokalnym do portu 3306 na komputerze zdalnym za pomocą klienta ssh wiersza poleceń, wpisz następujące polecenie z komputera lokalnego:
ssh -L 1234:localhost:3306 mysql.server.remote
Aby zrobić to samo z Javy, możesz użyć JSch , implementacja Java protokołu SSH2. Z jego strony internetowej:
JSch pozwala łączyć się z serwerem sshd i korzystać z przekierowania portów, X11, przesyłania plików itp., a także integrować jego funkcjonalność z własnymi programami Java. JSch jest licencjonowany na podstawie licencji BSD.
Na przykład spójrz na PortForwardingL.java
. Po połączeniu sesji utwórz połączenie JDBC z MySQL, używając czegoś takiego jak jdbc:mysql://localhost:1234/[database]
jako adres URL połączenia.