使用托管Web应用程序连接到SQL Server数据库

时间:2016-11-28 11:48:08

标签: c# sql-server database-connection ssms

我使用c#创建了一个.net Web应用程序,用于插入,更新和删除SQL Server数据库中的数据。我已经使用我的localhost测试了它,它工作正常。现在我想在托管网站上发布此应用程序。

我的问题是,数据库是否需要位于应用程序所在的同一服务器/主机上才能连接? 有没有人有关于如何实现这个的提示?

3 个答案:

答案 0 :(得分:2)

不,您不必在与应用程序相同的服务器上运行数据库。为了实现可扩展性,最佳做法是将数据库的两个专用服务器和一个服务器分开来托管所有网站。

在您的应用程序中,指定与数据库的连接。在数据库服务器上,您还可以设置IP限制以访问此数据,如果您真的想要进一步的安全性。

答案 1 :(得分:1)

如果你的问题是'如何连接另一台服务器上的数据库',那么你必须在Web.config文件中添加它的IP地址:

<connectionStrings>
    <add name="myConnectionString" connectionString="data source=myserver\SQLEXPRESS;initial catalog=myDatabase;uid=myUserName;password=myPassword;" />
</connectionStrings>

data source可以是IP ADDRESS或PC NAME,其中存储了数据库。

答案 2 :(得分:1)

  

数据库是否需要位于应用程序所在的同一服务器/主机上才能连接?

您可以将数据库放在同一台计算机或不同的计算机上。您可以选择以下方案

  • 如果它是一个简单的网站而你只有一台机器,那么你可以在同一台服务器上安装数据库(或者如果已经存在)。在这种情况下,连接字符串可能会也可能不会改变,具体取决于什么类型您使用的连接字符串(例如,如果您的sql server实例名称不同,连接字符串将更改)
  • 您的网站可能变得复杂或处理大量数据,使用专用数据库服务器是有意义的。此案例连接字符串将更改
  

有没有人有关于如何实现这一点的任何提示?

处理此问题的最简单方法是使用web.config转换。您所要做的就是创建一个新的 Web.Release.Config

请参阅此答案以获取更多详情How do I use Web.Config transform on my connection strings?