用户拒绝Java JDBC访问

时间:2011-11-22 09:55:08

标签: java mysql jdbc denied

我正在尝试从我的java应用程序连接MySQL,并继续说:

  

java.sql.SQLException:用户'vincent'@'x.x.x.x'拒绝访问   (使用密码:是)

我已经在phpmyadmin中检查过vincent可以从任何主机进行连接,而且我还有一个python脚本可以使用相同的用户名/密码连接而没有任何问题

有什么问题?

非常感谢

问候。

4 个答案:

答案 0 :(得分:3)

尝试从mysql中的任何计算机向用户授予所有权限:

 grant all on db_name.* to ‘vincent’@'%';

其中db_name是您的数据库名称......

答案 1 :(得分:1)

以下是我授予权限的方式:

create database foobar;
create user foobar identified by 'foobar';
grant all on foobar.* to 'foobar'@'%' identified by 'foobar';
grant all on foobar.* to 'foobar'@'localhost' identified by 'foobar';

您也需要用户的主机。

答案 2 :(得分:1)

使用此

GRANT ALL PRIVILEGES ON db_base.* TO db_user @'%' IDENTIFIED BY 'db_passwd';

您必须在db上授予用户访问权限。如果你正在使用用户定义的存储过程和函数,那么也可以使用

GRANT SELECT ON mysql.proc TO 'db_user'@'%';

答案 3 :(得分:0)

获取连接对象时必须指定useridpassword

Connection cn=DriverManager.getConnection("protocol","userid","password");