2016-04-24 14 views
0

リモートMySQLデータベースtestとユーザtestのJavaから「ALL PRIVILEGES」を設定しようとしています。executeUpdateでエラーが発生するJava MySQL

Class.forName("com.mysql.jdbc.Driver"); 
Connection con = null; 
con = (Connection) DriverManager.getConnection("jdbc:mysql://xx.xxx.xxx.xx:3306/?user=root&password=pswrd"); 

Statement st = con.createStatement(); 
int res = st.executeUpdate("GRANT ALL PRIVILEGES ON test.* TO 'test'@'%' IDENTIFIED BY '12345';"); 

臨時ナッシング:ここに私のコードの抜粋です。 rootユーザーのすべてのクエリは問題なく動作しますが、このpartucularのケースではエラーが発生します:

Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user 'root'@'%' to database 'test' 

どうしたのですか?

UPDATE

はここanswerです。だから、問題が解決されなかった...

+0

ユーザー名は' %' @ 'ルート' を読み込み、どのように来ますか? – randominstanceOfLivingThing

+0

例外のスタックトレースを含めてください。 –

答えて

0

DriverManager.getConnection("jdbc:mysql://hostname:port/dbname","username", "password"); 
0

との接続を確立してください「pswrd」でINDENTIFIED(特にyourHostから)「yourHost @ルートは」権限を管理する権限を持っていることを確認してください。このデータベースに

0

この '試験' のようなホストを追加してみてくださいは、@ 'yourhost '

+0

少し説明すれば、回答の質が向上します。 – m02ph3u5

関連する問題