相关文章推荐
痴情的上铺  ·  【IO系列】 ...·  1 年前    · 
失眠的啤酒  ·  WPF解决WindowsFormsHost背 ...·  1 年前    · 
豪气的机器人  ·  Window localStorage ...·  1 年前    · 

无法从安卓设备连接到mysql

0 人关注

在我的平板电脑上,我正在使用安卓应用商店的一个简单应用来访问我电脑上的mysql数据库(mysql管理器)。它失败了,说。

错误。通信失败。

最后一个成功发送至服务器的数据包是在0毫秒之前。 驱动程序没有收到来自服务器的任何数据包"

我的防火墙3306端口已经打开。 我也已经在mysql中授予了权限。

CREATE USER 'root'@'%' IDENTIFIED BY '1234';
FLUSH PRIVILEGES;

在我的电脑(localhost)上访问mysql,工作正常。 我的电脑运行在windows 7上,我使用的是最新的mysql工作平台(6.0版)。 我正试图通过我的Wi-fi路由器进行连接。

我试着在我的安卓设备上为我的电脑提供这些IP。

127.0.0.1
10.0.0.1

你能告诉我,为了能够从我的平板电脑上访问我的PC上的mysql数据库,我还应该做什么吗?

1 个评论
你好!我的答案能解决你的问题吗?如果是,请检查为 "正确",如果不是,请告诉我缺少什么。
android
mysql
user3434899
user3434899
发布于 2014-03-19
2 个回答
Guilherme Nascimento
Guilherme Nascimento
发布于 2022-05-18
已采纳
0 人赞同

Solution Intranet/Lan (probably wi-fi):

如果你的安卓设备是在 局域网网络工作 (可能是wi-fi),你必须使用 "lan ip"。

  • Get the ip (local ip/lan ip) of your PC (something like 192.168.1.101 or 10.0.0.101 or 10.1.1.12)
  • In your App (on android device) access something like 192.168.1.101:3306
  • Tip: recommend setting (manually) the IP of your computer because the router wont change the IP.
  • For get IP, see:

  • Open CMD
  • Type "ipconfig" (without quotation marks)
  • Press "Enter"
  • Your ip, subnet, mask and default gateway will be returned to you
  • Copy IP by the line IPv4 Address: xxx.xxx.xxx.xxx
  • Assuming you have returned something like "192.168.1.113" you must access the address to your "android device" like this: 192.168.1.113:3306
  • 请阅读 "本地ip/私人地址"。 http://en.wikipedia.org/wiki/IP_address#IPv4_private_addresses

    注意:10.0.0.1, 10.1.1.1, 192.168.0.1, 192.168.1.1是ROUTER和非PC的私有IP,即它们将永远不会被分配给其他计算机,因为它们属于路由器。

    Emulator:

    在你的电脑中同时运行MysqlServer和Emulator 127.0.0.1:(端口)

    10.0.2.2(即10.0.2.2:3306)是该问题的解决方案。

    仿真器在一个 "虚拟网络 "上运行,即与你的路由器不在同一个网络中。

    Emulator Networking details:

  • 10.0.2.1 Router/gateway address
  • 10.0.2.2 Special alias to your host loopback interface (i.e., 127.0.0.1 on your development machine)
  • 10.0.2.3 First DNS server
  • 127.0.0.1 The emulated device's own loopback interface
  • 阅读。 http://developer.android.com/tools/devices/emulator.html

    127.0.0.1

    127.0.0.1只能访问localhost,即当你试图用模拟器访问localhost时,你会试图打开自己的模拟器而不是PC。

    http://en.wikipedia.org/wiki/Localhost

    谢谢你的回答。首先我想澄清,我不是在用模拟器工作。我是在用一个真正的Andriod设备工作。此外,我已经尝试使用你建议的ip:10.0.2.2,现在我得到一个不同的错误信息。"Mysql manager isn't responding.你想关闭它吗?"你知道为什么它仍然不能工作吗?
    mysql服务器是在你的电脑上还是在服务器上?
    mysql server is on my computer
    你的安卓机是在一个LAN网络中还是在一个虚拟网络中(通常在连接USB线时使用ADT)?
    我认为这是一个网络。我正在将我的安卓设备(无线)连接到我的Wi-Fi路由器。
    Acidous
    Acidous
    发布于 2022-05-18
    0 人赞同

    首先检查my.ini文件中的正确配置。

    skip-networking=0 跳过绑定地址

    这2个项目必须在行首用#进行注释。