Ho risolto questo problema in passato utilizzando un tunnel SSH . Si apre un tunnel SSH al server, quindi ci si connette al server MySQL dall'endpoint di quel tunnel. In quanto tale, a MySQL sembra che tu ti stia connettendo localmente.
Dal terminale:
Per prima cosa devi aprire il tunnel, puoi farlo in questo modo:
ssh -N -L8889:127.0.0.1:3306 [email protected] &
Questo apre la porta 8889, quindi apre un tunnel per your.fortrabbit.domain.com
, quindi inoltra quella porta locale attraverso il tunnel verso l'IP 127.0.0.1 e la porta 3306 relativa al server su your.fortrabbit.domain.com
.
Le opzioni in modo più dettagliato:
-N
:Non eseguire un comando remoto.-L
:specifica le porte (locali e remote).8889
:la tua porta locale che viene inoltrata.127.0.0.1
:l'IP remoto a cui stai inoltrando, relativo al server a cui si sta connettendo ssh3306
:la porta remota a cui stai effettuando l'inoltro.[email protected]
:il tuo nome utente e dominio con fortrrabbit.
Ora sei pronto per aprire la connessione. Nello stesso terminale, usa il seguente comando:
mysql -h 127.0.0.1 -P 8889 -u mysql-username -p
la porta 8889 viene ora inoltrata alla porta e all'IP del tuo server MySQL sul lato fortrabbit, quindi sostituisci semplicemente mysql-username
con il tuo nome utente sul server mysql e sei connesso!
Da una GUI:
Hai menzionato nei tuoi commenti che stai usando Ubuntu, quindi installa MySQL Workbench dal Software Center o qui
, crea un New Connection
e seleziona il tipo di connessione come "Standard TCP/IP over SSH
".
Dovrai configurare quanto segue:
SSH Hostname
:il nome host o l'IP del tuo account ssh con fortrrabbitSSH Username
:il tuo nome utente con loroSSH Password
:la tua password con loroSSH Keyfile
:Se utilizzi le chiavi per l'autenticazione, seleziona quella privata qui.MySQL Hostname
:127.0.0.1 (perché è locale all'endpoint del tuo tunnel.MySQL Server Port
:normalmente "3306".Username
:il nome utente per il DBPassword
:la password per il DBDefault Schema
:Qualunque dovrebbe essere lo schema predefinito per questo DB (può essere lasciato vuoto).
Questo dovrebbe quindi connettersi ovunque tu sia!