0

我将 Hibernate 与 JPA 和 MySQL 一起使用。

我被拒绝访问。

java.sql.SQLException:用户“用户名”@“主机名”的访问被拒绝(使用密码:是)

我知道用户名/密码没问题。问题是驱动程序在末尾附加了@'hostname'。我怎样才能防止这种情况?

但是授权只针对用户名,而且机器不同,所以我不能为每个主机名授权。(我不在乎它是否安全,它是一个开发服务器)。

我以这种方式创建了数据库:

create database mydbname character_set utf8 collate utf8_general_ci;
GRANT ALL ON mydbname.* TO username IDENTIFIED BY 'password';
4

1 回答 1

2

您需要授予所有必须访问 MySQL 的机器。

如果您有很多机器并且您不想授予每一台您可以执行的操作:

GRANT ALL ON mydbname.* TO username@'%' IDENTIFIED BY 'password';

或者

GRANT ALL ON mydbname.* TO username@'192.168.1.%' IDENTIFIED BY 'password';

如果您不这样做,客户端将无法连接到您的数据库

欲了解更多信息:http ://dev.mysql.com/doc/refman/5.1/en/grant.html

于 2012-04-07T16:58:56.417 回答