概要
LinuxMintで、MySQLクライアントであるWindows用のHeidiSQLをWine上で動作させます。
で、他のサーバ上のMySQLにSSHトンネル経由で接続する際には、初回のみコマンドラインからSSHトンネルを張らなければなりません。
なぜかというと、初回にSSH接続する際に、「Are you sure you want to continue connecting (yes/no)?」っていうあれが聞かれてしまうからです。
おそらくcofnigとかでその質問を無視できるようにできると思うのですが、今回はそれに気づく前に対処してしまったのでメモします。
どうやって?
まずは普通にHeidiSQLのSSHトンネルを設定します。
なお、HeidiSQLのSSH接続には、plink.exeとPutty用の秘密鍵が必要です。
両方heidisql.exeと同じディレクトリに放り込んでおけばわざわざパスを書かなくていいので楽です。
上記のファイルの配置とHeidiSQLの接続先などの設定が済んだら、普通に接続します。
すると、ダイアログでエラーメッセージが表示されます。
そのエラーメッセージに実行しようとしたplink.exeとオプションが書かれているので、そのコマンドをコマンドラインで wine cmd
を実行してWindowsのコマンドプロンプトもどきの状態で実行する必要があります。
その他
ちなみに、HeidiSQLを終了させてもSSHトンネルは張られっぱなしになります。
そのため、再度HeidiSQLを実行して同じサーバに接続しようとしてもエラーになってしまいます。(すでにSSHトンネルが張られているのに同じポートにまたSSHトンネルを張ろうとしているため)
対策としてポート番号をその時だけ変えるのが楽ちんです。
もちろんOSを再起動してもOK