我已经在Windows 7上安装了SQL Server 2008 R2 Express。
当我在VS2010中运行一个web项目时,我收到以下错误:
与SQL Serverbuild立连接时发生networking相关或特定于实例的错误。 服务器未find或无法访问。 validation实例名称是否正确,并将SQL Serverconfiguration为允许远程连接。 (提供程序:SQLnetworking接口,错误:26 – 错误定位服务器/实例指定)
奇怪的是,我正在本地机器上(VS2010,IIS,SQL Server等,没有networking需要)。
我search并遵循了许多技巧。 没什么帮助。
我使用正确的实例名称(例如Data Source=PCName\SQLServer;Initial Catalog=SampleDBName;Integrated Security=True
)
给networking服务提供正确的凭证等等
现在我迷路了,现在有这个问题一个星期了。 把我的头发拉出来!
更新:
我有一个提示,用SQL Server Management Studio Expresstesting我的连接string。 在“连接”popup窗口中,通常使用“login”选项卡(第一个和默认选项卡)。 您也可以使用第三个选项卡“其他连接参数”。 我testing了我的连接string,它工作正常!
所以,我觉得这是有权利的。 但我不知道什么或哪些…
哦耶。 一些额外的信息。 我将IIS 7.5的Application Pool默认选项从“ApplicationPoolIdentity”更改为“NetworkService”。 我添加了networking服务作为login到SQL,授予权利等我打开SQL浏览器服务,服务正在运行(但它并不是真的必要,因为我运行本地)。
更新2:
这似乎是我find了什么原因造成的错误,但我不知道为什么。
对于我的网站,我创build了一个虚拟文件夹和应用程序的网站。 我需要一个url在我的逻辑。 因此,我使用主机头(如http://server.name.tld )
在VS2010中,我configuration了属性页面 – >启动选项 – >使用自定义web服务器的URL(与前面提到的主机头相同)。
如果我这样做,我得到的错误。
如果我使用使用属性页 – >开始选项 – >默认的Web服务器,似乎我得到一个连接到数据库。
但是我需要使用主机头。
我需要做什么,以获得“自定义Web服务器”的工作?
更新3:
今天也尝试与Windows Server 2008testing虚拟机。仍然收到错误。
还做了一个testingWeb应用程序,没有一个IIS站点没有一个主机头。 这工作得很好(使用相同的连接string)。 也在VM上。
我搞不清楚了。 我真的需要一个能够在这个领域交stream一些知识的人
你是否尝试在连接字符串中使用SQLExpress
作为实例名称?
PCName\SQLExpress
此外,请检查您的服务器是否配置为通过TCP / IP接受连接(请检查Sql server配置管理器)。 你能使用SQL server Management Studio连接到你的数据库吗? 从Visual Studio测试你的连接,它工作吗?
没有使用TCP绑定的命名实例通常被引用为.\[instance name]
,例如.\SQLExpress
或者在您的示例中可能是.\SQLserver
。
发现问题。 使用会话数据库配置Web.config,但没有创建会话数据库,并且不再计划这样做。 忘了把它关掉…