在Mac Mini/Time Capsule上远程访问MySQL

use*_*205 10 mysql macos remote-access portforwarding

我目前正在尝试在服务器上运行应用程序,但我的客户对他们的数据非常"挑剔",并希望将数据库存储在他们自己的内部办公室服务器上.我已经安装了MySQL并且可以让应用程序在本地运行,但由于某些特定原因,应用程序需要在其他地方运行.

我基本上无法从不同的位置访问MySQL.我认为我的主要障碍是将端口转发到正确的位置.MySQL安装在具有本地IP地址192.168.1.242的mac mini上,路由器/调制解调器是Apple Time Capsule.我已经尝试过查看教程,但他们都有我无法访问的选项.我附上了我可以访问的选项的屏幕截图以及我到目前为止尝试过的设置.

在此输入图像描述 在此输入图像描述

其他可能需要的信息是:

  • 我需要从PHP连接
  • 我使用通配符(%)在MySQL中设置了一个用户
  • 我在CMD中使用以下命令在我的本地机器上测试它:mysql -u username -h remote_ip_address -p
  • 我收到以下错误:ERROR 2003(HY000):无法连接到'REMOTE_IP_ADDRESS'上的MySQL服务器(10061)
  • 在Mac Mini上完全关闭防火墙
  • my.cnf文件中没有任何内容
  • 操作系统是Sierra

这就是我现在所能想到的一切,但任何建议都会受到高度赞赏,并且可以提供所需的更多信息.

PS.显然我对MAC机器/网络不是很了解

Jac*_*mar 0

MySQL 有一个用户/IP 的内部防火墙。即使您可以本地连接,您也可能没有远程权限:

root以MySQL 服务器上的用户身份尝试此操作(首先是本地!)

 GRANT ALL ON <db>.* TO '<user>'@'<remoteIP>' IDENTIFIED BY '<password>';
Run Code Online (Sandbox Code Playgroud)

在哪里

<db>是数据库的名称

<user>是您连接时使用的名称

<remoteIP>是您尝试连接的外部办公室 IP

<password>应该是不言自明的!

这将更好地解释选项