MYSQL 连接:拒绝访问

MYSQL Connection: Access Denied

这些是我的数据库连接代码:

Class.forName("com.mysql.jdbc.Driver");
con =DriverManager.getConnection("jdbc:mysql://10.44.222.111/try?" 
+ "user=jenny&password=perez");

在运行程序之后,它显示这个错误:

com.mysql.jdbc.exception.jdbc4.MySQLSyntaxErrorException:
Access denied for user 'jenny' @ '%' to database 'try'

我正在使用 MySQL Workbench.

如错误所述,用户 'jenny' 无权从任何主机 (%) 连接到数据库。在 mysql 提示符下,运行 以下命令为用户 'jenny' 提供从任何主机连接的权限。

GRANT ALL PRIVILEGES ON try.* TO 'jenny'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

您可以根据需要使用特定的特权而不是全部。

转到 MySQL Workbench,然后是用户权限,单击您的用户名,然后选中所有管理角色,然后单击应用。这将允许用户 'jenny'.

的连接

这表明您的用户无权从任何客户端主机(“%”)访问该数据库。

MySQL 使用四部分机制来允许访问:

  • 用户名
  • 密码
  • 数据库
  • 客户端主机

您需要确保用户在 MySql 中被授权访问 'try' 数据库并且被允许从任何客户端主机 ('%') 连接并且具有正确的用户名和密码。

此外,您应该确保连接到端口 3306(除非 MySQL 是 运行 在非标准端口上)。