win2008 r2 安装sql server 2005/2008 无法连接服务器解决方法

所属分类: 数据库 / MsSql 阅读数: 1282
收藏 0 赞 0 分享

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。

在使用G2服务时,测试服务器连接,结果遇到这个问题。

配置,server,sql,连接,实例0

问题详细:连接测试失败!:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)。

本机配置:Win7系统,SQL Server 2008 R2 数据库,在360浏览器测试使用G2服务测试数据库连接。

首先查看了数据库已经允许远程连接,数据库连接字符串也填写正确。PS:连接朋友数据库正常。

在网络上搜索了一些答案。

其中,第一种方法:

运行中输入services.msc,查看SQL有关服务是否全部开启。

配置,server,sql,连接,实例1

启动所有可以启动的SQL相关服务完毕,仍未解决问题。

配置,server,sql,连接,实例2

第二种方法:

设置配置管理器中TCP/IP,端口设置为默认的1433。

配置,server,sql,连接,实例3

结果SQLEXPRESS的协议设置为1433后,重启SQL Server (SQLEXPRESS)出现错误。

配置,server,sql,连接,实例4

然后就不能再启动了。

配置,server,sql,连接,实例5

最后找了好朋友帮忙,终于解决了问题。

所做的设置有:

更改SQL Server (SQLEXPRESS)TCP/IP

配置,server,sql,连接,实例6

其中8099是任意设置的端口(后面还要在防火墙设置)。

这时可以启动SQL Server (SQLEXPRESS)

配置,server,sql,连接,实例7

在控制面板打开防火墙,点击高级设置。

点击入站规则,新建规则

配置,server,sql,连接,实例8

选择端口,下一步

配置,server,sql,连接,实例9

输入之前的端口8099,下一步

配置,server,sql,连接,实例10

默认允许连接,下一步

配置,server,sql,连接,实例11

默认,下一步

配置,server,sql,连接,实例12

输入名称8099(可任意命名),完成。

配置,server,sql,连接,实例13

回到高级设置界面

配置,server,sql,连接,实例14

数据库测试成功

配置,server,sql,连接,实例15

您的支持是我不竭的动力。如果有错误的地方,欢迎指正。

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

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


当出现这个问题时,其实很简单,是不同的数据库版本,地连接方法个一样;注意以下红字部分。我以前是用Server=.;database=jtj;User ID=sa;Password=


改成了Server==.//SQLEXPRESS;Initial Catalog=jtj;User ID=sa;Password=


折腾了好久才搞好。

1.开启sql2005远程连接功能,开启办法如下:
配置工具->Sql Server外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的Database Engine节点,先择“远程连接”,接下建议选择“同时使用TCP/IP和named pipes”,确定后重启数据库服务就可以了。

2.登陆设置改为:Sql Server 和 Windows 身份验证模式,具体设置如下:
SQL Server Management Studio管理器->Windows 身份验证连接服务器->对象资源管理器中选择你的数据服务器->右键->属性->安全性->Sql Server 和 Windows 身份验证模式选中。
3.设置一个Sql Server方式的用户名和密码,具体设置如下:
(1)SQL Server Management Studio管理器->Windows 身份验证连接服务器->对象资源管理器中选择你的数据服务器->展开服务器上的“安全性”->登陆名->在sa帐号上点右键->“选择页”选择常规->更改sa登陆帐号的密码。这样就设置了一个用户名为sa,密码为:sa123456的用户。
(2)“选择页”选择状态->登陆修改为启用
4.数据库连接字符串
数据库连接字符串有好几种,相信你自己也见过,都被搞晕了
Data Server=./SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=服务器名/SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=localhost/SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=.;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=服务器名;Initial Catalog=Northwind;User ID=sa;Password=sa123456
……
到底那种正确?这跟数据库版本有关系,如果是Sql Server 2005 Express版本,则必须要有“/SQLEXPRESS”。而且如果这个字符串是定义为一个变量的时候,VS2005还会在“/”的下面加个红色的波浪线提示你“/S是无法识别的转义序列”,因此如果字符串是定义为一个变量的时候应该写成Server=.//SQLEXPRESS
5.注册Sql Server数据库
在路径“C:/Windows/Microsoft.NET/Framework/v2.0.50727”下运行“ASPNET_REGSQL”指令,就会出现ASP.NET SQL Server Setup Wizard向导,连续按下两个下一步后就会出现Sql Server注册界面,填入你要注册的数据库参数就注册好了。注册完后会在你的数据库里多几个表(如图):

5.设置数据库连接字符串
打开IIS->在默认网站或是网站所在的虚拟目录点击右键选择属性->选择ASP.NET选项卡->编辑配置->在“常规”页签编辑“LocalSqlServer”数据库连接字符串:
Data Server=./SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
6.设置web.config文件
在web.config文件添加如下程序:
<connectionStrings>
<add name="LocalSqlServer" connectionString="Data Source=./SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456" providerName="System.Data.SqlClient"/>
</connectionStrings>
这样便大功告成了。下面来测试
1.宽松的连接测试
宽松的连接测试使用SqlDataSource
VS2005服务器资源管理器选中数据库点击右键->选择修改连接->填入服务器名->使用Sql Server身份验证填入用户名sa及密码sa123456->选择或输入一个数据库名:Northwind->点击测试连接
宽松的连接测试连接成功并不能说明数据库就连接OK了,一开始我就是挂在这里,宽松的连接测试测试连接成功,可是始终无法读出数据库的内容到网页里头。
2.严谨的连接测试
在VS2005里选择网站菜单->ASP.NET配置进入ASP.NET网站管理工具->选择提供程序->点击AspNetSqlProvider的测试,若测试成功,说明数据库设置完全正确,否则得从头来过好好查查问题在哪里。

更多精彩内容其他人还在看

sqlserver中将varchar类型转换为int型再进行排序的方法

sql中把varchar类型转换为int型然后进行排序,如果我们数据库的ID设置为varchar型的 在查询的时候order by id的话
收藏 0 赞 0 分享

在SQL Server中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名

在项目开发中如果有时修改了一个存储过程,但是如何能够快速的查找到使用了这个存储过程的其它存储过程呢
收藏 0 赞 0 分享

sqlserver bcp(数据导入导出工具)一般用法与命令详解

bcp是SQL Server中负责导入导出数据的一个命令行工具,它是基于DB-Library的,并且能以并行的方式高效地导入导出大批量的数据
收藏 0 赞 0 分享

重命名SQLServer数据库的方法

本文讲解重命名SQLServer 数据库,包括物理文件名、逻辑文件名的改名
收藏 0 赞 0 分享

SQL Server中通过reverse取某个最后一次出现的符号后面的内容(字符串反转)

昨天在项目中遇到了一个非常简单的问题,需要把SQL Server数据库中保存的一段路径地址取出其文件名,但SQL Server又没有现成的方法,最后在网上找到这样的一个方法,原理是先将字符串反转,取出第一个/的位置,从头进行截取后再次反转
收藏 0 赞 0 分享

使用SqlBulkCopy时应注意Sqlserver表中使用缺省值的列

今天,想将以前做的一个程序增加点功能,原本就使用SqlBulkCopy批量、定时的从目录中的txt文件导入数据到Sqlserver中。以前一直都使用正常,但是不知怎的就老是出现一个错误
收藏 0 赞 0 分享

Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

讲解一下sql 2005日志怎么清理。一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大
收藏 0 赞 0 分享

SQL Server 2000 清理日志精品图文教程

SQL Server 2000 数据库日志太大!如何清理SQL Server 2000的日志呢
收藏 0 赞 0 分享

SQL行号排序和分页(SQL查询中插入行号 自定义分页的另类实现)

如何在SQL中对行进行动态编号,加行号这个问题,在数据库查询中,是经典的问题
收藏 0 赞 0 分享

sql分类汇总及Select的自增长脚本

对错误信息进行分类汇总,并实现错误数据的自增长编号
收藏 0 赞 0 分享
查看更多