0

VPS から AWS MySQL サーバーに接続しようとしていますが、何を試してもアクセスが拒否され、ユーザーは任意のホストから接続する権限を持っています。

PHP経由で接続しようとすると:

$db = new mysqli('mysite.cufncdsjslka.us-east-1.rds.amazonaws.com', 'my_user', 'my_pass', 'my_db');

私に与えます:Warning: mysqli::mysqli(): (28000/1045): Access denied for user 'my_user'@'XXXX.myhost.com' (using password: YES) in /home/me/shopify/libraries/db.lib.php on line 4

MySQL CLI 経由で接続しようとすると:

mysql -h mysite.cufncdsjslka.us-east-1.rds.amazonaws.com -umy_user -p

私に与えます: ERROR 1045 (28000): Access denied for user 'my_user'@'xxxx.myhost.com' (using password: YES)

このコマンドは、PC では問題なく機能しますが、VPS では機能しません。

MySQLが外部サーバーを使用できないようにする何らかのセキュリティ設定だと思いますか?

私の VPS は、手動で 5.4 に更新した PHP を除いて、標準の Debian パッケージのすべての LAMP コンポーネントで Debian スクイーズを実行しています。

SOで見つけたほとんどの同様の質問は権限の問題(MySQLユーザーに任意のホストから接続する権限を与えました)またはSELinuxの問題(AFAIKは適用されません)であるため、これを新しい質問として投稿しますDebian)

4

1 に答える 1

1

わかった。

この問題は、さまざまな理由で何度も見てきました。サーバーまたはログが表示されないため、情報からバインド アドレスの問題が発生している可能性があると推測しています。

my.cnf チェックで

bind-address=YOUR-SERVER-IP 

mysql サーバーの IP アドレス (81.92.33.45 など) に変更します。

この後、mysqlを再起動します。それでも接続できない場合は、ログからエラー情報をお知らせください。もう一度確認します。

次に、iptables が問題を引き起こしていないことを確認します。

iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
于 2013-04-10T17:25:34.470 に答える