React Native,Android Studio,JDBC,MySql - 用户 'root' @'ipaddress' 的访问被拒绝

React Native, Android Studio, JDBC, MySql - Access denied for user 'root' @'ipaddress'

我正在 React Native 应用程序中开发 android 本机模块。我正在使用 JDBC 直接连接到我电脑上托管的 mysql 数据库。我的 Phone 和电脑在同一 wifi 网络上,当我尝试访问数据库时出现以下错误。

 java.sql.SQLException: Access denied for user 'root'@'172.20.24.11'(using password:YES)

以下是我用来连接数据库的代码:

try{

  Connection con=DriverManager.getConnection(
          "jdbc:mysql://172.20.25.207:3306/dgcis","root","root");

  Statement stmt=con.createStatement();
  ResultSet rs=stmt.executeQuery("select COUNTRY_NAME from exp_imp_brc limit 1;");
  while(rs.next())
    str = rs.getString(1);

  System.out.print(str);

  con.close();
}
catch(Exception e){ str = e.toString();}

另请注意,此代码在我的个人笔记本电脑上运行良好,但当我尝试使用公司的电脑在我们公司的网络上 运行 时出现此错误。

您的连接是正确的,但当前用户没有访问数据库的权限。首先,您必须对各个用户授予访问权限。您可以通过登录 cpanel 和 select 数据库并向您正在登录的尊敬的用户授予权限..

当我将所有权限授予我尝试连接的用户时,问题已解决。

我使用了以下命令:

GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'%' identified by 'user_password';
FLUSH PRIVILEGES;