You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio中JDBC连接MySQL报错:Could not create connection to database server

解决Android Studio中JDBC连接MySQL失败的问题

先修正你代码里的语法错误:DriverManager.getConnection调用语句末尾缺少闭合括号,正确写法如下:

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/achat","root","");

接下来逐一排查核心问题:

1. 配置网络权限

在AndroidManifest.xml的<manifest>标签内添加网络权限:

<uses-permission android:name="android.permission.INTERNET" />

2. 调整MySQL服务器配置

  • 修改MySQL配置文件(Windows为my.ini,Linux为my.cnf),将bind-address设置为0.0.0.0(允许所有IP访问)或你的电脑局域网IP,修改后重启MySQL服务。
  • 开放电脑防火墙的3306端口,允许外部设备访问。
  • 给MySQL的root账号授权远程访问,在MySQL客户端执行:
GRANT ALL PRIVILEGES ON achat.* TO 'root'@'%' IDENTIFIED BY '你的密码';
FLUSH PRIVILEGES;

(若密码为空则留空,但空密码不建议用于正式环境)

3. 更新JDBC驱动与连接URL

  • 旧的com.mysql.jdbc.Driver已过时,替换为com.mysql.cj.jdbc.Driver,并在app模块的build.gradle中添加兼容驱动依赖:
implementation 'mysql:mysql-connector-java:8.0.33'
  • 连接URL需添加时区参数避免报错,同时将localhost替换为你的电脑局域网IP(如192.168.1.100),示例:
con = DriverManager.getConnection("jdbc:mysql://192.168.1.100:3306/achat?serverTimezone=Asia/Shanghai&useSSL=false","root","");

4. 重要建议

Android直接通过JDBC连接MySQL存在安全隐患(数据库账号密码易泄露),且移动网络环境下稳定性差。建议搭建后端接口(如Spring Boot、PHP服务),Android通过HTTP请求调用接口操作数据库,这是更规范、安全的开发方式。

内容的提问来源于stack exchange,提问作者You Kookie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 11:27:39