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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Mac的MAMP中允许远程连接到mysql数据库相关的知识,希望对你有一定的参考价值。

我使用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());

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

答案

这是输出:

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

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

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

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

另一答案

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

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

以上是关于如何在Mac的MAMP中允许远程连接到mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章

2020-12-04:mysql 表中允许有多少个 TRIGGERS?

如何在 Rider for Mac 版本中允许“不安全代码”?

如何使用 DataGrip 连接到 MAMP MySQL 服务器

如何在 MAMP 安装上从终端运行 mysql 命令?

无法从 Mac lion 连接到远程 mysql

将 Mac Excel 2016 连接到本地 MAMP SQL 数据库