无法从Android设备连接到mysql

时间:2014-03-18 20:35:04

标签: android mysql

在我的平板电脑上,我使用Android应用程序商店中的一个简单应用程序访问我的PC上的mysql数据库(mysql管理器)。它没说:

  

error.communication失败。

成功发送到服务器的最后一个数据包是0毫秒前。 驱动程序尚未收到来自服务器的任何数据包“

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

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

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

我尝试在我的Android设备上为我的电脑提供这些IP:

127.0.0.1
10.0.0.1

您能告诉我还有什么办法可以从平板电脑上访问我电脑上的mysql数据库吗?

1 个答案:

答案 0 :(得分:0)

解决方案Intranet / Lan(可能是Wi-Fi):

如果您的Android设备位于 LAN NetWork (可能是Wi-Fi),则必须使用“lan ip”。

  1. 获取PC的ip(本地ip / lan ip)(类似于 192.168.1.101或10.0.0.101或10.1.1.12)
  2. 在您的应用程序(在Android设备上)访问类似192.168.1.101:3306
  3. 的内容
  4. 提示:建议设置(手动)计算机的IP,因为路由器不会更改IP。
  5. 要获取IP,请参阅:

    1. 打开CMD
    2. 键入“ipconfig”(不带引号)
    3. 按“Enter”
    4. 您的IP,子网,掩码和默认网关将退还给您
    5. 按行IPv4 Address: xxx.xxx.xxx.xxx
    6. 复制IP
    7. 假设您返回了类似“192.168.1.113”的内容 您必须访问“android设备”的地址,如下所示:192.168.1.113:3306
    8. 了解“本地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,即它们永远不会被分配给其他计算机,因为它们属于路由器

      仿真器:

      在您的计算机127.0.0.1 :( port)中运行MysqlServer和Emulator

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

      模拟器在“虚拟网络”上运行,即与路由器不在同一网络中。

      仿真器网络详细信息:

      1. 10.0.2.1路由器/网关地址
      2. 10.0.2.2主机环回接口的特殊别名(即开发计算机上的127.0.0.1)
      3. 10.0.2.3第一个DNS服务器
      4. 127.0.0.1模拟设备自己的环回接口
      5. 阅读: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