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

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

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

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

本机配置:win7系统,sql server 2008 r2 数据库,在360浏览器测试使用g2服务测试数据库连接。

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

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

其中,第一种方法:

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

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

第二种方法:

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

结果sqlexpress的协议设置为1433后,重启sql server (sqlexpress)出现错误。

然后就不能再启动了。

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

所做的设置有:

更改sql server (sqlexpress)tcp/ip

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

这时可以启动sql server (sqlexpress)

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

点击入站规则,新建规则

选择端口,下一步

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

默认允许连接,下一步

默认,下一步

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

回到高级设置界面

数据库测试成功

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

在与 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的测试,若测试成功,说明数据库设置完全正确,否则得从头来过好好查查问题在哪里。

(0)
上一篇 2022年3月21日 上午7:05
下一篇 2022年3月21日 上午7:05

相关推荐