无需公共IP即可通过GPRS连接到SQL实例

时间:2015-10-13 15:20:28

标签: c# sql-server connection-string vpn gprs

我们有以下设置:

  • 带有GPRS连接的Windows移动设备
  • 带有SQL Server 2012的Windows Server PC
  • VPN网络,其中包含两个设备(单元运营商在VPN内部路由某些IP)

状态:

通过上述设置,我可以通过GPRS直接从移动设备ping到Windows服务器内部IP。

问题:

  • 我可以使用服务器的内部IP从我的手机创建与SQL服务器的连接吗?

我的骗局是:

"Data Source =xxxxxxxx,1433;Initial Catalog=xxxxx;Integrated Security=SSPI;User id=xxxxx;Password=xxxxx;Connect Timeout=15"

修改

更多问题:

  • 如果是,我该如何实施
  • 根据David的评论
  • 有什么利弊

1 个答案:

答案 0 :(得分:1)

如果您有VPN并且可以ping内部服务器,则可以使用.Net Framework中提供的常规数据访问库直接连接到SQL Server。话虽如此,我强烈建议反对。在移动设备和数据库之间建立接口的中间层服务更为可取。以下是一些原因(在我的头脑中)为什么这样做更好:

  • 移动连接本质上不稳定,SQL连接在处理时并不是很好。
  • 拥有服务意味着您甚至不需要VPN,因为它可以面向公众(当然具有相关的安全性)。
  • 如果您将来决定将表单SQL Server移动到DocumentDB / Azure /运营商,那么您需要更新每个移动设备以应对更改。如果您有中间服务器,则可以更新它。
  • 如果数据库架构发生更改,您可以一次性中断所有客户端应用程序。
  • 您的中间层可以执行其他有用的操作,如缓存,日志记录等。