Microsoft OLE DB Provider for SQL Server错误'80004005'

Bur*_*urt 5 sql sql-server asp-classic sql-server-2008

我已将经典的ASP站点迁移到新服务器,并收到以下错误消息.

我尝试了不同的连接字符串,但没有一个工作.

我甚至不确定连接字符串是否是问题

新服务器是Windows 2012 Server,SQL Server 2008 R2 Express计算机.


Microsoft OLE DB Provider for SQL Server error '80004005'

[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.

/scripts/dbcode.asp, line 31 
Run Code Online (Sandbox Code Playgroud)
Application("C2M_ConnectionString") = "Provider=SQLNCLI10;Server=(local);Database=mysite_live;Uid=mysitec_Live;Pwd=mypass;"
Run Code Online (Sandbox Code Playgroud)

Aar*_*and 8

如果它是Express实例,则很可能不是默认实例,而是命名实例.所以你可能意味着:

... "Provider=SQLNCLI10;Server=.\SQLEXPRESS; ...
--- instead of just (local) ---^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)

否则,您需要在该计算机上的SQL Server配置管理器中向我们显示服务器属性,以便我们能够告诉您如何更正连接字符串.


Ros*_*ush 2

尝试在连接字符串中对服务器执行 ping 操作。您的应用程序所在的服务器应该能够在您通过凭据指定的端口上进行通信。如果您在本地开发,请尝试指定“localhost”。如果服务器是集群的或者您作为实例安装,那么您需要指定该实例。如果使用 sql 凭据,还要确保服务器配置为混合模式身份验证。

或者尝试

数据源=localhost;初始目录=DBNAME;持久安全信息=True;用户ID=MyUserName; 密码=我的密码;