SSHポートフォワーディングでMySQLに接続する方法を調べたので、まとめておきます。
○SSHポートフォワーディングでMySQLに接続する方法
まず、ポートフォワーディングを実行します。
ssh -f -N -C -L 10000:localhost:3306 user@nantoka.com -p 22
以下、説明になります。
コマンド | 説明 |
-L 10000:localhost:3306 | ローカルの10000ポートを接続先サーバーの3306ポートにマッピングするという指定 |
user@nantoka.com -p 22 | nantoka.comというサーバーの22ポートにユーザ名userで接続するという指定 |
-fオプション | このポートフォワーディングをバックグラウンドで実行する。 |
-Nオプション | SSHトンネリングのみに使用する。 |
-Cオプション | データを圧縮して送る。 |
また、ポートフォワーディングを停止したい場合は、ps aux | grep sshコマンドで当該プロセスを探し、killすればいい。
外部サーバーのMySQLに接続するには、先程のポートフォワーディングが行われているので、10000番のポートを指定すれば外部サーバーで稼働しているMySQLに接続することができます。
mysql -u root -p -h 127.0.0.1 --port=10000