找不到SQL Server或无法访问SQL Server

时间:2011-03-25 16:13:43

标签: asp.net sql-server

下面的问题是什么?

  

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)

     

描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

     

异常详细信息:System.Data.SqlClient.SqlException:建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)

如何解决这个问题?

9 个答案:

答案 0 :(得分:8)

所有程序>> Microsoft SQL Server 2008>>配置工具>> SQL Server配置管理器>> SQL Server服务,并检查SQL Server服务状态是否为“正在运行”。

答案 1 :(得分:6)

在搜索时,看到此结果在Google中排名第二:

找不到服务器或无法访问服务器

我将添加到这篇文章中。我的同事已经在这个问题上搜索了一整天,检查了他的连接字符串并仔细检查了他的代码。他可以使用SQL连接到服务器,但他的应用程序无法连接。

原来他正在从网络共享中运行他的应用程序。网络共享只有部分信任,因此会产生这种误导性的异常。

将项目移至本地驱动器,然后重试。希望这有助于某人!

答案 2 :(得分:5)

这意味着它的确如此。由于某种原因,运行代码的计算机无法与SQL Server通信。这可能是由很多事情引起的:防火墙问题,DNS /名称解析,SQL配置(未配置为接受TCP / IP连接)。仅举几例。

答案 3 :(得分:5)

我们在我们的.NET网站上间歇性地访问它,该网站访问另一台服务器上的SQL Server数据库。我尝试了几件事,包括确保我更频繁地关闭所有SQLConnections和回收应用程序池。这些帮助了一些,但问题仍然时有发生。结果是DNS问题。

我通过将域名中的连接字符串Data Source值更改为 IP地址来解决此问题,例如:

Data Source=My-SQL-Server;Initial Catalog=database-name;Integrated Security=true

Data Source=10.1.2.237;Initial Catalog=database-name;Integrated Security=true

答案 4 :(得分:2)

需要重新启动MS SQL服务。请按照以下步骤操作:

1-按窗口标志+ R打开运行窗口。

2-键入services.msc并按Enter键。

3-在服务列表中查找SQLSERVER(MSSQLSERVER)。

4-右键单击该服务,然后选择REFRESH或START。

希望它有效。

答案 5 :(得分:0)

只需执行以下步骤:

  1. 所有程序
  2. Microsoft SQL Server 2008 R2
  3. 配置工具
  4. SQL Server配置管理器
  5. 弹出窗口会点击“是”。
  6. 选择 Sql Server服务(在左侧)并确保所有服务的状态正在运行(在右侧)

答案 6 :(得分:0)

我试图运行MVC Movie教程,但我遇到了错误。所以我创建了一个新的MVC项目并复制了它的连接字符串,并使用它来替换教程中的那个。基本上,替换这个: Data Source=(LocalDB)\v11.0 有了这个: Data Source=(LocalDb)\MSSQLLocalDB 适用于所有connectionString属性。

答案 7 :(得分:0)

如果您的连接字符串指向本地数据库...

connectionString="Data Source=(localdb)\

Server=localhost\SQLEXPRESS;Database=

此错误的另一个原因是:您的系统中可能未安装Sql Server。

在此处下载Sql Server Express:

https://www.microsoft.com/en-us/download/details.aspx?id=55994

安装并重试。

您可以使用以下连接字符串进行连接:

Server=localhost\SQLEXPRESS;Database=master;Trusted_Connection=True;

您的本地服务器名称是localhost \ SQLEXPRESS。

用您的数据库名称替换数据库。

如果您仍然无法连接,请参阅这篇文章:

Why am I getting "Cannot Connect to Server - A network-related or instance-specific error"?

答案 8 :(得分:0)

转到SSMS并检查那里是否可以访问SQL Server。 尝试用IP地址替换域名。检查您是否具有足够的授权,以及是否满足其他要求。

如果需要,请尝试检查LAN连接和VPN连接。