与MySql的JDBC连接错误-用户'root'@'localhost'的访问被拒绝(使用密码:NO)

问题描述 投票:-2回答:1

尝试连接MySql时出现错误,这是我的代码:

String url = "jdbc:mysql://localhost:3306/new_schema";
Connection conn = DriverManager.getConnection(url, "root", "");

这是错误:

Exception in thread "main" java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: NO)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
..etc

我尝试过:

Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/new_schema","root",null);
java mysql jdbc
1个回答
-1
投票
String url = "jdbc:mysql://localhost:3306/new_schema";
Connection conn = DriverManager.getConnection(url, "root", null);

作为“”被标记为空字符串,不为null。

也尝试给予

grant all privileges on new_schema.* to 'root'@'%'

您是否可以使用本地连接MySQL?

mysql -u root -p

如果您无法本地连接,则您的MySQL设置一定有问题。另外,请在卸载服务器之前进行备份

尝试

  1. 卸载MYSQL服务器
  2. 从安装MySQL的基本文件夹/目录中删除所有内容
  3. 安装新的MySQL服务器

请详细说明此问题Java代码似乎是正确的另外,如何通过MySQL-connector-XXXX.jar或其他方式连接MySQL与Java代码?

© www.soinside.com 2019 - 2024. All rights reserved.