私はコンピューター A にいて、mysql を実行していて、それに接続できA~ $ mysql -u punkish -p database
ます。
mysql も実行されているコンピューター B にアクセスできます。sshキーペアを設定して、ポート2200経由でBにsshできます。一度入ると、次のようにdbに接続できます
A~ $ ssh -p 2200 punkish@B
B~ $ mysql -u punkish -p database
ただし、コンピューター A のポート 3307 で mysql に対して行われたすべての要求が実際には B のポート 3306 に送信されるように、コンピューターで ssh 経由のポート転送をセットアップしたいと考えています。 mysql ですが、トンネル経由では実行できません。だから、私は次のことをします
A~ $ ssh -p 2200 -L 3307:B:3306 punkish@B
B~ $
上記により、B に直接ログインできます。トンネルが確立されているかどうかはわかりませんが、確立されていると想定しています。ただし、以下は失敗します(別の端末で
A~ $ mysql -P 3307 -u punkish -p
Enter password:
ERROR 1045 (28000): Access denied for user 'punkish'@'localhost' (using password: YES)
ここで興味深いのは、Sequel Pro (Mac OS X 用のデスクトップ MySQL クライアント) と呼ばれる別の GUI プログラムがあり、ssh 経由で mysql@B に問題なく接続できることです。だから、私は何かがうまくいくことを知っています...方法がわからないので、別のGUIプログラムで有効にできるかもしれません。