Chápu to tak, že chcete přistupovat k serveru mysql běžícímu na vzdáleném počítači a naslouchajícímu řekněme na portu 3306 prostřednictvím tunelu SSH.
Chcete-li vytvořit takový tunel z portu 1234 na vašem místním počítači do portu 3306 na vzdáleném počítači pomocí klienta ssh příkazového řádku, zadejte z místního počítače následující příkaz:
ssh -L 1234:localhost:3306 mysql.server.remote
Chcete-li provést totéž z Javy, můžete použít JSch , Java implementace SSH2. Z jeho webových stránek:
JSch vám umožňuje připojit se k sshd serveru a používat přesměrování portů, přesměrování X11, přenos souborů atd. a jeho funkčnost můžete integrovat do vlastních programů Java. JSch je licencován pod licencí stylu BSD.
Podívejte se například na PortForwardingL.java
. Jakmile se relace připojí, vytvořte připojení JDBC k MySQL pomocí něčeho jako jdbc:mysql://localhost:1234/[database]
jako adresu URL připojení.