2017-02-07 43 views
2

私は周りを見回しましたが、特に私は思ったんだけど何取り組む任意の答えを見つけることができません。Djangoでは、SSH経由でリモートサーバ上のMySQLデータベースに接続する方法は?

をMacのターミナルでは、私はSSHを介してリモートサーバーにアクセスすることができた:

ssh [my_username]@[server.host.com] 

私にパスワードを要求し、パスワードを入力すると、私はリモートサーバーに私を連れて来ます。

私は、リモート・サーバにログインしたら、私は、MySQLにアクセスすることができます。

別のパスワードの入力を求められます
mysql -u [other_username] -h [mysql.host.com] -p 

、およびパスワードを入力した後、私は、MySQLのコンソールにいるよとデータベースを表示することができます私は[データベース]に興味があるデータベースを呼び出すことができます。

私のアプリケーションは[データベース]を使用するように、私のローカルホスト上でDjangoを[データベース]に接続するにはどうすればよいですか?

答えて

4

リモートサーバのmysqlポートをマシンのローカルポートにマッピングするためのsshトンネルを作成できます。

ssh -L 3333:127.0.0.1:<remote mysql port> <username>@<remote host> -N 

このプロセスがアクティブな場合、ローカルポート3333はリモートホストのリモートポートに接続します。

+0

良い答えです。これはうまくいくはずです。しかし、これはテストや非生産目的以外の目的には適しているのかどうかは懸念されます。 – nicorellius

+1

私は本番環境でこれを使用しません。プロダクションでは、適切なネットワークルート、ファイアウォールなどを設定して、アプリケーションサーバーをデータベースサーバーに直接接続できるようにしました。 – turbotux

+0

答えを愛する。なぜ私はそれを考えなかったのだろうかと思う。 –

関連する問題