0

IP アドレス 181.2.3.5 のマシンで MySQL サーバーを実行しており、そのaffablebean上で実行されているというデータベースがあります。同じマシンから経由で接続できます。しかし、リモートでアクセスしてJavaアプリケーションをデプロイしようとすると、以下のエラーが発生します:

内部例外: java.sql.SQLException: 接続の割り当て中にエラーが発生しました。原因: 接続を割り当てることができませんでした: ユーザー 'root'@'181.2.3.4' のアクセスが拒否されました (パスワードを使用: YES)

どちらのシステムも LAN 上にあります。特権を付与するために以下のクエリを試しました:

GRANT ALL ON *.* to 'root'@'%' IDENTIFIED BY 'sql123';
flush privileges;

また、以下のもの:

GRANT ALL ON *.* to 'root'@'181.2.3.4' IDENTIFIED BY 'sql123';
flush privileges;

しかし、それでも同じエラーが発生します。mysql サービスを再起動しようとしましたが、それでも接続を受け入れません。

ところで、サーバーは Windows XP を実行しており、クライアントは Windows 7 で実行されています。以下のクエリも試しました。

mysql> use mysql;
mysql> SELECT host FROM user WHERE user = 'root';

私のIPアドレスを正しく返します。しかし、それでも同じエラーです。誰でも私を案内できますか?さまざまなSOの質問から上記の解決策を試しました。

注: 上記の IP アドレスとユーザー名は、説明のための単なるプレースホルダーです。

編集: Workbench からはアクセスできますが、Java プログラムからはアクセスできません。

4

2 に答える 2

0

Workbench と Java プログラムは、他のクライアントと同じです。したがって、これら 2 つのクライアントに設定の違いがあるかどうかを確認する必要があるのは、資格情報が間違っている可能性があります。

于 2013-06-13T07:13:18.070 に答える
0

サーバーIPでポート名を指定する必要があります。

hostIP:portNumber と同様

于 2013-06-13T07:00:22.267 に答える