有两台机器 PC#1 带有数据库 mysql 和 appache,PC#2 带有 c# 形式尝试连接到此数据库
这是我在 PC#2 中使用的连接字符串:SERVER=My_public_ip;PORT=3306;DATABASE = my_test; UID = root; PASSWORD = xxxx;"
当我尝试从 PC#1 本地连接时,它运行良好:
SERVER=localhost;DATABASE = my_test; UID = root; PASSWORD = xxxx;"
我确实使我的根用户远程启用了这样的功能:
GRANT ALL ON *.* to '%'@'%' WITH GRANT OPTION;
我得到的只是一个事件查看器:unable to connect to any of the specified MySQL host
现在我认为这与防火墙无关,在两台电脑上关闭它们后,我仍然收到相同的错误消息,但我无法弄清楚
答案1
读了你的问题,我可以假设 PC#1 和 PC#2 不在同一个 LAN(公共 IP)中
服务器=My_public_ip;端口=3306
如果此陈述正确,您必须将端口 3306 从路由器转发到 PC#1 的本地 IP。
这是一个很好的网站告诉你该做什么。
如果您的 PC#1 和 PC#2 在同一个局域网中,那么您必须将您的“public_ip”更改为“PC#1 的 local_ip”。