'localhost'アクセス権を持つユーザーとsshトンネルを介してリモートMySQLに接続したい。
私はこれを使ってトンネルを作ります:
ssh -f -N -L 33306:localhost:3306 user@remote-host
そしてこれはホストに接続します:
mysql -h 127.0.0.1 -P 33306 -uuser -ppassword
私が得るエラーは次のとおりです。
ERROR 1045 (28000): Access denied for user 'user'@'remote-host' (using password: YES)
問題は、ユーザー'user' @'remote-host'(または'user' @'%')が存在せず、'user'@'localhost'のみが存在することです。
サーバー側でローカルホストから来たと思わせることなく、リモートホストを強制する方法はありますか?とにかくsshトンネル経由で接続するのはそれが唯一の理由です。
ノート:
このコマンドで接続したい場合:
mysql -h localhost -P 33306 -uuser -ppassword
このエラーが発生します:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
追加データ:
/ etc / hostsのリモートサーバーでは、値は次のようになります。
127.0.0.1 localhost
remote-ip remote-host