我试图设置" ALL PRIVILEGES"来自Java远程MySQL数据库test
和用户test
。这是我的代码片段:
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用户的所有查询都可以正常工作,但在这个特殊情况下,我收到了错误:
Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user 'root'@'%' to database 'test'
我做错了什么?
更新
此处answer。所以,问题没有解决......
答案 0 :(得分:0)
尝试与
建立联系DriverManager.getConnection("jdbc:mysql://hostname:port/dbname","username", "password");
答案 1 :(得分:0)
请确保'pswrd'识别的'root @ yourHost'(特别是来自yourHost)有权管理此数据库的权限。
答案 2 :(得分:0)
尝试添加类似'test'的主机@' yourhost '