mysql
(コマンドラインユーティリティ)を使用して、SSHトンネルを介してMySQLサーバーに接続しようとしています。問題は、このMySQLクライアントが指定されたポートを使用しないことです。たとえば、私はこれを実行しました:
$ mysql -uroot --port=1234
そして、ポート3306に接続しました。
なぜそれをするのですか?
どうすればforceこのクライアントをポート1234に接続できます(ポート1234が接続できないことが表示されます)。
サーバーが実行しているのと同じホストでmysqlクライアントを実行している場合は、おそらくソケット接続を行っており、ポートをまったく使用していません。コマンドに--protocol=TCP
を追加してみてください
mysql -uroot --protocol=TCP --port=1234
TCP/IPを使用する場合は、ホストIPを指定する必要があります。ホストがlocalhostの場合は、代わりに127.0.0.1を使用する必要があります。
言い換えると
mysql -uroot -h127.0.0.1 -P1234 -p(ルートにパスワードがある場合)
mysql -uroot -h127.0.0.1 -P1234(ルートにパスワードがない場合)
ログインしたら、このクエリを実行して次のことを確認します。
'ポート'のような変数を表示します。