我正在尝试使用mysql进行jdbc连接但是获得了SQLException。
我的代码是: -
public void createConn() throws MysqlException {
try {
String url ="jdbc:mysql://172.168.1.73:3306/mysql";
Connection con =DriverManager.getConnection(url,"root", "");
System.out.println("URL: " + url);
System.out.println("Connection: " + con);
}
我正在接受例外......
java.sql.SQLException:用户'root'@'192.168.1.187'拒绝访问 (使用密码:否)
我正在尝试连接到172.168.1.73,但它正在尝试连接到192.168.1.187 ......
root用户没有密码。
请告诉我如何解决这个问题。
答案 0 :(得分:2)
检查root用户是否可以访问IP 192.168.1.187
的计算机它没有尝试连接到192.168.1.187。
异常中的'root'@'192.168.1.187'表示机器中用户名为“root”且IP为“192.168.1.187”的用户试图访问数据库服务器。因此192.168.1.187是客户端IP。
数据库服务器根据用户和机器用户用于连接的IP限制访问。因此,如果要从IP“192.168.1.187”连接到数据库服务器,则应授予访问该用户以从该特定IP进行访问的权限。
检查MySQL GRANT以获取更多详细信息。
答案 1 :(得分:0)
为了更安全,您需要分配root密码并再次尝试。下面的页面包含连接到mysql数据库的Java代码: http://www.worldbestlearningcenter.com/index_files/java_database_connect_mysql.htm