java.sql.SQLException:Android 中用户'root'@'192.148.2.106'(使用密码:YES)的访问被拒绝
Posted
技术标签:
【中文标题】java.sql.SQLException:Android 中用户\'root\'@\'192.148.2.106\'(使用密码:YES)的访问被拒绝【英文标题】:java.sql.SQLException: Access denied for user 'root'@'192.148.2.106' (using password: YES) in Androidjava.sql.SQLException:Android 中用户'root'@'192.148.2.106'(使用密码:YES)的访问被拒绝 【发布时间】:2020-10-06 04:44:48 【问题描述】:我正在尝试使用 JDBC 将我的 android 应用程序连接到 mysql 数据库,但是当我在真实设备中测试该应用程序时,我不断收到此异常,我真的无法弄清楚 我试图在 XAMPP 中创建一个新用户并授予该用户所有权限,但都没有成功
有人可以帮我解决这个问题吗,我真的被屏蔽了?
我的活动代码:
public class SuccessActivity extends AppCompatActivity
public static final String url="jdbc:mysql://192.148.2.114:3306/gtransport";
public static final String user="root";
public static final String pass="a123";
TextView EmailShow;
TextView Etat;
String EmailHolder;
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_success);
EmailShow = (TextView)findViewById(R.id.email_textview);
Etat=(TextView)findViewById(R.id.etat_textview);
Intent intent = getIntent();
EmailHolder = intent.getStringExtra(MainActivity.USER_NAME);
EmailShow.setText(EmailHolder);
new MyTask().execute();
private class MyTask extends AsyncTask<Void,Void,Void>
private String V_etat="";
@Override
protected Void doInBackground(Void... voids)
try
Class.forName("com.mysql.jdbc.Driver");
Connection con= DriverManager.getConnection(url,user,pass);
String sql="select * from Chauffeur where email=?";
PreparedStatement stmt=con.prepareStatement(sql);
stmt.setString(1,EmailHolder);
ResultSet rs=stmt.executeQuery();
while(rs.next())
V_etat = (rs.getString("nom"));
catch(Exception e)
e.printStackTrace();
return null;
@Override
protected void onPostExecute(Void aVoid)
Etat.setText(V_etat);
super.onPostExecute(aVoid);
这是我在 xampp 中的用户表:
【问题讨论】:
您必须允许网络范围内的 sql 数据库配置中的连接,或者允许所有 IP @GGK 请问我该怎么做? 使用命令允许远程访问GRANT ALL PRIVILEGES ON *.* TO '<user>'@'10.3.%' IDENTIFIED BY '<Password>' WITH GRANT OPTION;
【参考方案1】:
我解决了我的问题! 我发现当我创建用户时,我自己输入了密码,同时我忘记并点击了“生成密码按钮”,它会为你生成一个自动密码。
所以任何面临类似问题的人在创建新用户时都要注意这一点!
【讨论】:
以上是关于java.sql.SQLException:Android 中用户'root'@'192.148.2.106'(使用密码:YES)的访问被拒绝的主要内容,如果未能解决你的问题,请参考以下文章
java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_
java.sql.SQLException:列计数与第 1 行的值计数不匹配,并且我的数据库的第 1 列是自动记录的
java.sql.SQLException:getShort() 的值无效 - ''
java.sql.SQLException: SQL 语句在 org.hsqldb.jdbc.JDBCUtil.sqlException 处关闭
Oracle DB:java.sql.SQLException:关闭连接
Cause: java.sql.SQLException: 请求的转换无效 ; uncategorized SQLException for SQL []; SQL state [99999]; er