当我尝试连接SQL Server时,我得到以下错误:

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

当我试图在Visual Studio 2010中将数据库配置为gridview时抛出此错误。我不知道如何调试这个错误。

如何调试此错误?除了错误消息中提到的步骤之外,我还应该采取哪些步骤来确定这里到底发生了什么?


当前回答

此错误主要发生在SQL服务停止时。您需要重新启动服务。要进入这个窗口,您必须像这样搜索服务-

然后搜索“SQLSERVER(MSSQLSERVER)”,并重新启动服务。

希望这能奏效。

其他回答

在我的情况下,MSSQLSERVER服务有一个问题,所以我重新启动服务,问题解决了。

所以我建议通过Windows键进入服务应用程序,搜索“服务”,然后找到你的Sql实例,通常是“Sql Server (MSSQLSERVER)”在Microsoft Sql Server。 右键单击服务,然后单击启动,如果禁用,则单击重新启动。

我把安装Windows 7的工作笔记本电脑换成了安装Windows 10的工作笔记本电脑。 我已经在Windows 7上成功使用了SSMS2016。

使用SSMS2012或SSMS2016时也出现了同样的问题。 我使用windows身份验证访问10个SQL服务器的权限仍然相同。我可以在另一个服务器上测试。 但是,10个服务器中的2个无法从我的笔记本电脑连接。 两者都是ms SQL server 9,但我可以连接到另一个SQL server 9数据库。

解决方案是添加防火墙规则(使用带高级安全的Windows防火墙)。

为每个SSMS创建一个Incoming规则 例如C:\Program Files (x86)\Microsoft SQL Server\130\Tools\ bin \ManagementStudio\ sssm .exe

我不是网络专家,所以我没有包括细节,但希望它能给你指明正确的方向。


错误信息msg (pre防火墙规则) "在建立与SQL Server的连接时,发生了与网络相关或特定于实例的错误。未找到服务器或无法访问服务器。验证实例名称是否正确,SQL Server是否配置为允许远程连接。(提供者:SQL网络接口,错误:26 -错误定位指定的服务器/实例)(。Net SqlClient数据提供程序

在做了上面提到的所有事情之后: http://blog.sqlauthority.com/2009/05/21/sql-server-fix-error-provider-named-pipes-provider-error-40-could-not-open-a-connection-to-sql-server-microsoft-sql-server-error/ 对我来说还是没用。

以下步骤对我很有效:

开始>执行> cmd > sqlcmd -L

它将提示您服务器名。确保此服务器名称与SQL management studio的CONNECT to server框中试图连接的服务器名称相同。

我犯了这个愚蠢的错误,我一直使用MSSQLSERVER而不是使用这个服务器名。

希望这对像我一样犯愚蠢错误的人有所帮助。

谢谢。

这个解决方案解决了SQL服务器背后的网络错误和服务问题

我在这里回答了一个类似的问题,您需要统计其他开放运行类型->服务。msc -在服务->排序停止你会看到一堆停止的SQL服务右键单击并启动

开始-有4个问题可能会导致常见的LocalDb SqlExpress Sql Server连接错误Sql网络接口,错误:50 -本地数据库运行时错误发生,在开始之前,您需要将v11或v12重命名为(LocalDb)\mssqllocaldb


Troubleshooting Steps

您没有正在运行的服务,执行命令net start MSSQLSERVER或net start MSSQL$ instancename 这里没有防火墙端口 配置 你的安装有问题/损坏(下面的步骤可以帮助你一个干净的开始) 您没有将V11或12重命名为mssqllocaldb/SqlServer

我发现最简单的是做下面的事情——我附上了图片和步骤以寻求帮助。


Resolution Steps:

首先验证您已经安装了哪个实例,您可以通过检查注册表并运行cmd来完成此操作

i .执行命令> Sqllocaldb.exe cmd> Sqllocaldb.exe s "那个versionyouwantfromlistbefore " 如果此步骤失败,可以使用选项d删除cmd> Sqllocaldb.exe d "someDb" cmd> Sqllocaldb.exe c "createSomeNewDbIfyouWantDb" cmd> Sqllocaldb.exe start "createSomeNewDbIfyouWantDb"


重新启动MSSql服务器或简单地重新启动您的机器!

按住/按打开CMD,窗口+ R,输入“services.msc” 现在寻找sql server服务,打开查找带有实例名的sql server 然后重新启动此服务并重试

这也可能是简单的事实,你的数据库实际上不是MS SQL Server。例如,如果你的数据库实际上是MySql,你试图用System.Data.SqlClient连接它,你会得到这个错误。

到目前为止,大多数ADO的例子。Net将用于MSSQL,没有经验的用户可能不知道你不能在MySql中使用SqlConnection, SqlCommand等。

虽然所有的ADO。Net数据提供程序遵循相同的接口,您必须使用为您的数据库提供程序。