(provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错) 问题解决啦 O(∩_∩)O哈哈~

在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)

                     整了一天一夜,终于找到问题所在。分享一下吧。

 

出错页:
         “/WebSite-Classic”应用程序中的服务器错误。
--------------------------------------------------------------------------------

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)

源错误:


行 97:    {
行 98:        SqlConnection connection = conn();
行 99:        connection.Open();    出错!!!
行 100:        SqlCommand cmd = new SqlCommand("select count(*) from Tab_User_Infor where UserName='" + str1 + "' and UserPWD='" + str2 + "'", connection);//验证密码、用户名和状态为不在线同时成立则登陆成功。
行 101:        int i = Convert.ToInt32(cmd.ExecuteScalar());


源文件: d:/My Documents/Visual Studio 2005/c#ASP.net/WebSite-Classic/App_Code/data.cs    行: 99 

网上的几种方法:

首先先确定电脑上安装了SQL Server(SQLEXPRESS)服务,并正常启动。

然后,进入开始--> 程序-->Microsoft SQL Server 2005->配置工具->SQL Server外围应用配置器

选择“服务和连接的外围应用配置器”


选择“MSSSQLSERVER->Database Engine->远程连接",计算机默认的是仅限本地连接,所以选择”本地连接和远程连接->同时使用TCP/IP和named pipes(B)"

设置好后,单击应用和确定,并返回“服务”

停止服务后重新启动。

设置好以上服务后,接下来再看看SQL Server Configuration Manager里面的设置。

进入Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager

选择SQL Server 2005 网络配置->MSSSQLSERVER的协议,把协议VTA禁用,默认是启动的。

以上配置好后,到最后一步了。重启SQL Server

进入控制面板->服务->SQL Server(MSSSQLSERVER)和SQL Server(EXPRESS),把启动类型设置为自动启动,然后重启两个服务!

我的问题所在:web.config

错误的web.config:

 <appSettings/>
  <connectionStrings>
    <add name="webDBConnectionString" connectionString="Data Source=CHINA-61C49955A/SQLEXPRESS;Initial Catalog=webDB;User ID=sa;Password=123"
      providerName="System.Data.SqlClient" />
    <add name="webDBConnectionString2" connectionString="Data Source=.;Initial Catalog=webDB;Integrated Security=True"
      providerName="System.Data.SqlClient" />
  </connectionStrings> 
正确的:

<appSettings/>
<connectionStrings>
<add name="webDBConnectionString" connectionString="Data Source=.;Initial Catalog=webDB;User ID=sa;Password=123" providerName="System.Data.SqlClient"/>
</connectionStrings>
 
 后记:

虽然是小问题,但还是难倒了我这个菜鸟。苦闷寻觅了一整天,希望把这些分享给大家,让大家少走些弯路。    

 

### 回答1: 这个错误提示是在尝试连接 SQL Server 数据库出现的,可能是由于网络问题或者实例配置问题导致的。需要验证实例名称是否正确,并且 SQL Server 是否已经配置为允许远程连接。同,还需要检查网络连接是否正常。错误信息中提到了一个 provider: sql network interfaces, error: 26 - 定位指定服务器/实例出错,这可能是由于连接字符串中指定服务器实例名称不正确导致的。 ### 回答2: “与网络相关的或特定于实例的错误”一般是指连接数据库出现的错误。可能是由于网络问题实例名称输入错误或 SQL Server 的设置问题导致连接失败。在面对这种情况,最好分步骤进行排错。 首先,我们需要检查网络连接。确认本地网络连接是否正常,检查远程服务器是否开启并处于连接状态。如果网络没有问题,那么可以再次检查实例名称是否正确,尝试通过 IP 地址连接 SQL Server。 如果连接仍然失败,那么问题可能是由 SQL Server 的设置问题导致的。请检查是否启用了远程连接。可以在 SQL Server Configuration Manager 中找到“SQL Server Services”,选择要连接实例,并在“TCP/IP”协议的属性中启用“远程连接”。 如果以上方法都没有解决问题,使用 SQL Server Management Studio 检查实例的端口号和配置文件中的信息是否匹配。还可以使用 SQL Server Profiler 来检测是否有连接请求到达服务端。 总之,在与 SQL Server 建立连接出现网络相关或特定于实例的错误,我们应该分步骤进行排错,从网络连接实例名称、SQL Server 设置等方面逐一排查,找到根本原因并进行解决。 ### 回答3: 如果在与 SQL Server 建立连接出现网络或特定于实例的错误,这通常表示服务器无法在网络上被找到或无法被访问。这个问题经常出现在以下情况下: 1. 实例名称不正确:检查实例名称是否正确拼写。有候可能会发生笔误或者其他拼写错误导致实例名称不被识别。 2. SQL Server 配置不正确:确保 SQL Server 已经正确配置为允许远程连接和接受来自特定 IP 地址的连接。这可以在 SQL Server 的配置管理器界面中进行修改。 3. 防火墙堵塞连接:防火墙可能会阻止连接SQL Server,这通常由于网络安全策略导致。您需要根据使用的防火墙软件,进行相应的配置,允许 SQL Server 数据库的访问。 4. 实例不存在或已关闭:检查 SQL Server 是否启动。如果未启动或已关闭,您需要启动 SQL Server 服务并检查 SQL Server 日志以找出任何与该问题相关的详细信息。 5. SQL Server 配置错误:如果您对 SQL Server 不熟悉或不确定某些配置如何设置,您可以搜索SQL Server的相关帮助文档或咨询相关的技术支持。 总之,要解决SQL Server 建立连接出现的网络或特定于实例的错误,您需要仔细检查配置并尝试进行简单的故障排除。拉一个专业的人员为您解决也是个不错的选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值