Hinweis: Dies ist vergleichbar mit Verwenden Sie Ruby on Rails und SSH, um auf die entfernte MySQL-Datenbank auf dem Remote-Server zuzugreifen , aber das OP hat nicht viele Informationen geliefert, und die einzige Antwort beantwortet die Frage nicht.
Wir haben kürzlich unsere Remote-Datenbank von der Passwort-Authentifizierung auf die ssh-basierte Authentifizierung umgestellt. Ich habe überprüft, dass ich über den eleganten Sequel Pro grafischen Datenbank-Client mit den folgenden Einstellungen auf die db zugreifen kann (einige Namen absichtlich verschleiert):
%Vor%Jetzt muss Rails eine Verbindung zur selben Datenbank herstellen, auch mit ssh-key-basierter Authentifizierung.
Was passiert in meiner config/database.yml
Datei?
Bisher habe ich:
%Vor% ... aber wie gebe ich SSH Host
, SSH User
und SSH Key
in der config/database.yml
Datei an?
Als unsere Datenbank eine Passwort-Authentifizierung hatte, funktionierte Folgendes:
%Vor%Zuerst müssen Sie einen SSH-Tunnel zum MySQL-Server einrichten. Führen Sie auf dem Clientcomputer Folgendes aus:
%Vor%Damit wird ein SSH-Tunnel zum Server von salt.woofwoof.com eingerichtet. Alle Verbindungen zum Localhost-Port 3307 werden über Port 3306 durch den Tunnel an den Remote-Host gesendet.
Konfigurieren Sie dann einfach Ihre Datenbank.yml wie für eine lokale Verbindung, aber geben Sie den weitergeleiteten Port 3307 an:
%Vor%Sie können auch das ssh-Tunnel-Setup zu / etc / inittab hinzufügen, so dass der Tunnel nach dem Booten erstellt wird. Ein Beispiel dafür finden Sie Ссылка .
Tags und Links ruby mysql ruby-on-rails ssh