你能帮助大家吗,我制作了一个应用程序,我的几个朋友会用到它,但是这个应用程序是用标准 (TCP/IP) 连接方法编写的,我以为这很容易,只要给他们服务器 IP 和端口就可以了,但是我遇到了这个问题,我无法通过公共 IP 访问我的数据库?我成功转发了 3306 端口,但仍然无法通过公共 IP 连接到我的 mysql 服务器,只能通过本地主机或 lan ip 连接。为什么这么难?我不需要任何安全的东西,只需要 IP、端口、用户名和密码。怎么了……:/// 我在 30 个论坛上问过,但没人帮忙……服务器在 Windows 7 上运行。
答案1
这是极其不安全的,但如果你坚持的话,请将 my.cnf 中的“bind-address”行从 127.0.0.1 更改为 0.0.0.0。
答案2
- 将 my.cnf 中的 bind-address 更改为 0.0.0.0
- 重新启动数据库服务器
运行此查询:
更新mysql.user设置主机='%'其中用户='YOUR_MYSQL_USERNAME';刷新权限;
编辑:这应该放在评论中,但我没有足够的代表。你确定你的端口已正确转发吗?另外,请确保你的 ISP 不会阻止它。
答案3
MySQL 默认监听本地机器。我们可以通过以下方式更改:绑定地址设置在我的cnf在服务器上。通过更改此设置来监听公共 IP 地址绑定地址为 0.0.0.0。还请检查skip-networking 未开启。