拒绝用户“root”@“ipaddress”访问

yvfmudvl  于 2021-06-24  发布在  Mysql
关注(0)|答案(2)|浏览(302)

我正在react原生应用程序中开发一个android原生模块。我使用jdbc直接连接到一个mysql数据库托管在我的电脑上。我的手机和电脑是在同一个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();}

还要注意的是,这段代码在我的个人笔记本电脑上运行得非常好,但是当我尝试在公司的网络上使用公司的pc运行这段代码时,我遇到了这个错误。

3ks5zfa0

3ks5zfa01#

您的连接是正确的,但当前用户没有访问数据库的权限。首先,您必须获得相应用户的访问权限。您可以通过登录到cpanel并选择database并向您登录的受尊敬的用户授予权限。。

eoxn13cs

eoxn13cs2#

当我将所有权限授予试图连接到的用户时,问题就解决了。
我使用了以下命令:

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

相关问题