错误提示:在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。(provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)
有段时间遇到上面问题,在网上查了许多方案,但那些方案都没能够解决问题,在解决其他问题时,发现一些其他端倪,返回来解决此问题,将该问题解决。总结了我的解决方案(即下文中的方案一),并且我把在网上搜索来的解决方案也汇总了一下,与大家分享。
分析:
“在建立与服务器的连接时出错”说明与数据库服务器有关;
“在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。”说明与权限有关;
“provider: SQL 网络接口”说明当前登录身份是网络接口;
“error: 26 - 定位指定的服务器/实例时出错”说明定位不上指定的服务器实例。
方案一:
1、 查看数据库服务是否存在;
2、 右击数据库实例服务--属性—登陆,将登陆身份改为本地系统(local system);
3、 启动服务;
4、 若启动、暂停、停止等选项都是灰,请查看启动类型是不是“禁用”了,若“禁用”了,请改为 “自动”,然后启动服务;
方案二:
首先请确认SQL SERVER EXPRSS已安装到本地计算机上,并且SQL SERVER (SQLEXPRESS)服务已经成功启动。如果问题仍然存在,可以尝试开始->所有程序->MS SQL Server2005->配置工具->MS SQL Server2005外围应用配置器-> “服务和连接的外围应用配置器”,然后将“远程连接”配置为“同时使用 TCP/IP 和 named pipes”。 Analysis Ser
vices下远程连接选择"本地连接和远程连接",应用后重启。
由于启动用户实例的进程时出错,导致无法生成 SQL Server 的用户实例。该连接将关闭。 将连接字符串中的“User Instance=True”修改为“User Instance=False”即可。
更改数据库文件的Everyone修改权限,在windows xp中有两个方法可以修改它:
1,在"我的电脑"窗口中点"工具",选择"文件夹"选项,选择"查看"选项,在高级设置中将使用简单文件共享复选框中的小勾勾掉。然后选定数据库文件,你就可以发现多了一个安全选项,点击它,选择everyone用户组,如果没有,你可以自行添加它。然后更改它的控制权限。
2,你也可以重新启动计算机,在进入系统时按下F8,选带网络连结的安全模式,然后你选定数据库文件, 这时也有一个安全选项,你按照上面的方法也可以完成同样的功能。
注:该方法解决以下问题:
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 尝试为文件 项目名\App_Data\aspnetdb.mdf 附加自动命名的数据库,但失败。已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中。
1,在"我的电脑"窗口中点"工具",选择"文件夹"选项,选择"查看"选项,在高级设置中将使用简单文件共享复选框中的小勾勾掉。然后选定数据库文件,你就可以发现多了一个安全选项,点击它,选择everyone用户组,如果没有,你可以自行添加它。然后更改它的控制权限。
2,你也可以重新启动计算机,在进入系统时按下F8,选带网络连结的安全模式,然后你选定数据库文件, 这时也有一个安全选项,你按照上面的方法也可以完成同样的功能。
注:该方法解决以下问题:
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 尝试为文件 项目名\App_Data\aspnetdb.mdf 附加自动命名的数据库,但失败。已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中。
方案三:
进入配置工具,配置管理器里面,查看下VIA是否禁用了,如果没有那么禁用VIA,然后就可以重新启动服务了。
方案四:
错误是:服务器/实例出错. 有时用localhost就会出现error:26.
1.在外围配置里面,远程连接选择:同时使用TCP/IP和named pipes.
若没解决进行下一步.
2.例如果你sql上是zss\SQLEXPRESS
配置是不要写localhost\\SQLEXPRESS,要写zss\\SQLEXPRESS.
方案五:
错误是:服务器/实例出错. 有时用localhost就会出现error:26.
1.在外围配置里面,远程连接选择:同时使用TCP/IP和named pipes.sql连接不上服务器
若没解决进行下一步.
2.例如果你sql上是zss\SQLEXPRESS
配置是不要写localhost\\SQLEXPRESS,要写zss\\SQLEXPRESS.
方案六:
装上SQLExpress2005,出现了下面的错误:An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)解决方法:在SQLExpress2005上的设置修改其Remote Connection enable,就可以使用了。但是不知道这到底是什么原因。
方案七:
在c:\windows\system32下面framedyn.dll文件丢失了,所以我去C:\WINDOWS\system32\wbem中将framedyn.dll拷贝一份到c:\windows\system32里面,然后打开Sql Server configuration manager,将“SQL Server 2005服务”的子项全部启用,ok再次打开SQL Server Management Studio,进行连接就好了。其实最关键的一个问题就是framedyn.dll是framework链接库文件,丢失了以后导致服务器无法连接。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论