我有2台机器。机器A已安装SQL Server,数据库将在此机器上运行。机器B很远,它将连接到该数据库以进行操作。
Windows窗体应用程序将在两台计算机上运行。
我无法从计算机B连接到计算机A来访问SQL Server数据库。
我在app.config
中使用connectionString =“ Data Source = IP,PORT; ...”。
我正在使用的IP是通过ipconfig命令找到的我的计算机IP。
在SQL Server配置管理器中,启用了共享内存,命名管道,TCP / IP协议。
试图关闭Windows防火墙,并添加了1433作为入站端口。
我的app.config
文件如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="MassComputers.Properties.Settings.MassCompConnectionString"
connectionString="Data Source=xxx.xxx.80.80,1433;Initial Catalog=MassComp;Persist Security Info=True;User ID=sa;Password=pass@word1"
providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>
我想通过Internet从计算机B使用/访问在计算机A上运行的数据库。 (机器不在局域网中)
我尝试了来自社区的许多不同解决方案,但没有一个真正起作用。
编辑:我能够直接使用公共IP从机器B到机器A(SQL服务器正在运行)建立连接。 但是,每次连接到Internet时,机器A的公共IP都会更改。如何使用静态IP使其保持不变?