C# - 通过LAN
问题描述:
我有XAMPP托管在PC上用IP数据库远程连接到XAMPP-数据库:10.35.250.195C# - 通过LAN
我想从一台笔记本电脑访问该数据库在同一个局域网里的我的C# - 应用程序正在运行。 这是我的连接字符串:
"SERVER=10.35.250.195;DATABASE=testdb;USERID=root;PASSWORD=;"
但我无法打开从远程PC /笔记本电脑的连接。
我可以通过上面的连接字符串从托管数据库的PC访问数据库。我也可以使用“10.35.250.195/phpmyadmin”从远程笔记本电脑访问浏览器中的phpmyadmin。所以连接从笔记本电脑到PC与数据库,但我无法打开在C#中的远程连接。
在phpmyadmin中,我允许用户“root”拥有所有权限访问主机10.35.250.195,我甚至允许每个用户都可以访问主机10.35.250.195,并拥有所有权限(我知道我不应该这样做,因为安全原因...)。
如何通过局域网从远程PC访问c#中的数据库?有人能帮我找到错误吗?
答
见MySQL手册第5.4节。使用Windows凭据应允许远程连接,无需其他密码:https://downloads.mysql.com/docs/connector-net-en.pdf。另请参阅https://www.connectionstrings.com/mysql/。示例连接字符串:Server = myServerAddress; Database = myDataBase; IntegratedSecurity = yes; Uid = auth_windows; – jdweng
问题不在于如何在Windows上的C#中打开连接。我可以用上面提到的连接字符串打开主机上的连接。问题是它不能从远程PC使用该字符串。 – Charbacca
是的。除非远程PC和本地PC在同一组中,否则PC不允许远程PC连接。那么用户必须在两台PC上都有一个帐户。所以使用IntegratedSecurit y = yes;自动使用用户Windows登录(和组帐户),而不是使用用户名和密码。所以你必须设置一个组帐户,并将本地和PC添加到组中。然后将用户添加到该组。 – jdweng