如何在Mac的MAMP中允许远程连接到mysql数据库

问题描述 投票:0回答:2

我使用MAMP在我的Mac上有一个MySQL数据库。我需要使用来自具有IP的远程服务器(例如184.173.9)的PHP脚本连接到此数据库....我已经尝试了2天而没有运气。

我尝试了一些论坛,他们要求注释跳过网络,并在MAMP的my.cnf文件中使用bind-address和远程服务器的IP。首先,我没有在MAMP中找到my.cnf文件,但最终在Library / support-files / my-medium.cnf中找到了一个。我复制了它并放在tmp / mysql / my.cnf中。但没有任何作用。

我还在系统偏好设置/安全和隐私中关闭了防火墙。

我用来连接的PHP代码如下所示:

mysql_connect('176.249.200 ....:3306','test','test')或die(mysql_error());

你能告诉我还有什么我想念的吗?

mysql database connection
2个回答
0
投票

这是输出:

授予所有特权。要'测试'@'%'IDENTIFI ......

在测试时授予所有特权。*'测试'@'%'

在easytask上授予所有特权。*''测试'@'%'...

IP地址184.173.9 ....是一个专用的远程服务器,我有PHP脚本。而176.249.200 ....是我的本地IP,3306是MySQL端口。


0
投票

首先确保它连接(您应该拒绝连接,而不是超时/连接错误)。你可以通过执行以下方法测试:

mysql -h ip.addr.goes.here -p -u test

如果无法连接,则可能是防火墙问题或配置问题。

如果它连接并且权限被拒绝,则可能是授权问题。创建用户然后授予对表的访问权限

  CREATE USER 'dbusername'@'%' IDENTIFIED BY 'some_pass';
  GRANT ALL PRIVILEGES ON *.* TO 'dbusername'@'%'

注意,如果您使用localhost替换%,则用户将在本地访问,如果您指定ip,则从特定IP替换,或者如果指定%,则仅远程访问。关于mysql页面http://dev.mysql.com/doc/refman/5.1/en/adding-users.html的更多细节

之后,刷新权限以确保它们发挥作用:

  flush privileges
© www.soinside.com 2019 - 2024. All rights reserved.