我正在尝试从我的IP地址连接到我正在帮助解决的移动网络应用程序,因此我可以在我的Android手机上进行测试。但是,当我从localhost和我的IP地址访问登录屏幕时,它会显示,但它只允许我从本地地址登录 - 它甚至没有从IP地址连接。
我正在运行MAMP Pro并取消选中“仅允许本地访问”。我进入MySQL my.cnf并将绑定地址从127.0.0.1更改为我自己的IP。我还注释掉了“MAMP_skip-networking_MAMP”行。然后,我创建了一个与config.php中的用户匹配的用户,具有对数据库的完全访问权限,并将其主机设置为%。
在config.php文件中,我尝试将主机名更改为:
仍然......没什么。当我尝试从我的IP访问该站点时,我仍然无法登录。任何帮助/方向将不胜感激..谢谢!
答案 0 :(得分:0)
问题不在于客户端,很可能与服务器有关。大多数MySQL服务器都配置为(我认为默认情况下)拒绝非本地连接尝试。给我几秒钟的时间来调整配置/信息架构的变化,以便你可以改变它。
警告,为所有请求打开数据库是个坏主意。您要么让它对来自一个用户的所有IP请求开放,要么允许来自特定IP的任何用户的请求(或者甚至更好,将两者合并并使其成为只有特定用户可以从特定IP发出请求)
这是一个很好的(但又危险的)教程:
how-do-i-enable-remote-access-to-mysql-database-server
如果我没弄错的话,简单的方法就是运行以下查询:(假设你是“superadmin”:
USE information_schema;
UPDATE USER_PRIVILEGES SET Host='%' WHERE user='superadmin';
FLUSH PRIVILEGES;
USE mysql;
UPDATE user SET Host='%' WHERE user='superadmin';
以上基本上授予superadmin访问mysql db(如果尚未授权),然后切换到该db并从任何IP授予superadmin访问权限。再次,按照提供的链接查看如何根据每个用户和每个IP进行调整,否则您只是为了使用漂亮的MySQL GUI而打开一个受伤的世界。
可能比上述更复杂(可能需要重新启动等)。另一篇好文章是:
MySQL - Adding Users - 查找提及通配符的部分。