gpt4 book ai didi

asp.net-mvc - 与 SQL Server 建立连接时发生与网络相关或特定于实例的错误

转载 作者:行者123 更新时间:2023-12-04 08:26:10 24 4
gpt4 key购买 nike

我在 azurewebsites 上有一个简单的 mvc 网站(使用 VS 互联网模板),与同一数据中心中的 SQL Azure 数据库通信。这个时候的数据库只是做了内置的SimpleMembership Provider。我已经从默认的 App_Data mdf 文件切换到 Azure SQL。它工作正常,但有时一段时间后,它会给出:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)



有一个很长的消息:

SQLExpress database file auto-creation error:

The connection string specifies a local Sql Server Express instance using a database location within the application's App_Data directory. The provider attempted to automatically create the application services database because the provider determined that the database does not exist. The following configuration requirements are necessary to successfully check for existence of the application services database and automatically create the application services database:



但是我没有使用 SQL Server Express 的连接字符串!

立即重新启动网站不会消除错误。

不做任何更改并在 15 分钟后重新启动网站,给出:

502 - Web server received an invalid response while acting as a gateway or proxy server.

There is a problem with the page you are looking for, and it cannot be displayed. When the Web server (while acting as a gateway or proxy) contacted the upstream content server, it received an invalid response from the content server.



以前,我只需从 VS 重新发布即可将网站恢复到正常工作状态。但是在过去的一个小时里,我试了又试,但我无法让网站再次工作。

SQL Server Express 的真正问题是什么?

我的连接字符串部分包含:
<connectionStrings>
<add name="DefaultConnection" connectionString="Server=tcp:sabl6h4---.database.windows.net,1433;Database=MVC;User ID=test@sabl6h4---;Password=----;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" providerName="System.Data.SqlClient" />
<add name="Entities" connectionString="metadata=res://*/Data.Model1.csdl|res://*/Data.Model1.ssdl|res://*/Data.Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=sabl6h4---.database.windows.net;initial catalog=MVC;user id=test;password=----;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

可以肯定的是,我将 sabl6h4---.database.windows.net 复制并粘贴到 SSMS 中并使用登录测试进行连接,它打开数据库没有问题。

一天后 :我创建了一个新的 azurewebsite 并发布了完全相同的项目和相同的 web.config。它工作正常,没有问题。几分钟后,发生了完全相同的错误!

三个小时后 : 去吃午饭,回来,点击浏览器刷新按钮,网站再次启动。我确信有人在玩弄后端的设置。

最佳答案

添加 <clear/>元素作为 connectionstrings 元素下的第一个元素,以确保没有字符串被继承。另外,我假设您的 Azure SQL DB 设置了适当的防火墙设置,允许您部署 ASP.net 代码的 IP?

关于asp.net-mvc - 与 SQL Server 建立连接时发生与网络相关或特定于实例的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19346938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com