別の EC2 サーバーから Amazon EC2 サーバーの 1 つで mysql DB にアクセスする際に問題に直面しています。外部 IP アドレスから mysql にアクセスするための適切なアクセス許可を提供することに関するさまざまな記事を読みました。以下は、私が実行した手順です。
- ホスト EC2 インスタンスでポート 3306 を開き、外部 Mysql 接続を可能にしました。
- ファイル /etc/mysql/my.cnf で、「bind-address」を「127.0.0.1」から「0.0.0.0」に変更しました。
- root を使用して mysql を開き、次のコマンドを実行しました: GRANT ALL PRIVILEGES on 。worker@'ec2-ip-address' IDENTIFIED BY 'password' に;
私が読んだすべてのブログ/記事によると、これで問題は解決したはずですが、次のエラーが引き続き発生します。
1130 Host 'amazon-ec2-ip' is not allowed to connect to this MySQL server
EC2 インスタンスに指定した IP アドレスは、インスタンスの作成時に生成されるエラスティック IP でした。問題が EC2 に固有のものかどうかを確認するために、別の「静的 IP アドレス」に対してコマンド「3」を実行してみました。これでうまくいきました (つまり、そのリモート サーバーから mysql ホストにログインできた) ので、上記の手順が正しいことは間違いありません。
Amazon EC2 の IP アドレスが機能しないのはなぜですか?