1

我正在尝试从基本的 android 应用程序远程连接到我的 MySQL 服务器。我可以使用'localhost'很好地连接到服务器,但我也希望任何主机连接到服务器(为了简单起见,现在)。

我的 phpMyAdmin 中有以下两个用户:

User    Host       Password  Global privileges  Grant
root    %           Yes      ALL PRIVILEGES      Yes    
root    localhost   Yes      ALL PRIVILEGES      Yes

我连接到数据库的变量是:

/*
* All database connection variables
*/

define('DB_USER', "root"); // db user
define('DB_PASSWORD', "myPass"); // db password (mention your db password here)
define('DB_DATABASE', "mainData"); // database name
define('DB_SERVER', ''); // db server
?>

我还编辑了 my.cnf,我正在使用 MAMP PRO。我修改了这一行:

bind-address = 0.0.0.0

我还取消选中了 MAMP PRO 中的“仅允许本地访问”选项。

我重新启动了服务器,但仍然无法从非 localhost 的主机连接。我在几部手机上安装了 android 应用程序,但我只能连接到 localhost 上的数据库。

我环顾了论坛,找不到不同的解决方案。任何帮助或建议将不胜感激。

4

2 回答 2

1

调用 PHP 并让该脚本访问 MySQL 而不是客户端访问端口 3306 怎么样?

于 2012-11-12T06:49:19.820 回答
1

最简单的检查防火墙是否阻止与数据库服务器的连接是。使用工作站并尝试使用 telnet 到端口 3306。这至少会告诉您问题存在于哪里,在应用程序或网络中。

在 MAMP 服务器上检查的另一件事是端口是否实际上在 0.0.0.0:3306 或 127.0.0.1:3306 上打开

尝试netstat -an | find "3306"

于 2012-11-12T07:07:23.857 回答