IIS中无法访问数据库的问题

xxfxiazai 2010-05-12 11:12:58
IIS在我的电脑上,数据库服务器在另一个电脑上(防火墙已关),
ASP.NET页面调试的时候能正常访问数据库,但在浏览器中输入IP地址访问的时候数据库访问失败。



“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

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

异常详细信息: System.Exception: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
...全文
461 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxfxiazai 2010-05-12
  • 打赏
  • 举报
回复
数据库是2000的,系统是XP的
xxfxiazai 2010-05-12
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 k20002001 的回复:]
ASP.NET页面调试的时候能正常访问数据库,但在浏览器中输入IP地址访问的时候数据库访问失败。

你的网站发布了没有?
[/Quote]
我换了一个数据库服务器就好了,所以应该是原先数据库服务器的设置有问题
k20002001 2010-05-12
  • 打赏
  • 举报
回复
ASP.NET页面调试的时候能正常访问数据库,但在浏览器中输入IP地址访问的时候数据库访问失败。

你的网站发布了没有?
xxfxiazai 2010-05-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 q107770540 的回复:]
数据库外围配置内设置允许TCP/IP 访问
[/Quote]
这个设置了 没用。
4楼提供的资料我都看过,也试过。。。。
懦芞 2010-05-12
  • 打赏
  • 举报
回复
1. 确保服务器端的数据库中存在sa,并支持混合登录模式.默认安装的时候,可能会忽略建立sa.

2. 确保服务器端的数据库是支持远程调用的.打开SQL Server Management Studio,选择该数据库,右键菜单"Properties",在打开的对话框中选择Connections,把Allow remote connections to this server选上.

3. 确保服务器端的SQL服务的TCP/IP是Enable的.打开SQL Server Configuration Manager. 选择SQL Server 2005 Network Configuration下的Protocols for SQL2005( 我安装的SQL示例名为SQL2005), 把Named Pipes和TCP/IP都修改为Enabled,默认是Disabled.

4. 确保服务器端的SQL实例的远程调用是支持TIP/IP和named pipes的. 打开SQL Server Surface Area Configuration Manager,在打开的页面中选择Surface Area Configuration for Services and Connections.选中实例的Remote Connections,把Using both TCP/IP and named pipes选中.

5. 重启服务器端的SQL Server 2005服务,确保SQL Server Agent和SQL Server Browser的服务也启动了. 默认都是需要手动启动,可以改成Automatic.

6. 因为服务器端的操作系统是WinXp+SP2,所以还需要检查防火墙.确保防火墙中的1433端口打开了.



在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

client:XPsp2+vs2005+.NETFramework2.0.

server: XPsp2+.NETFramework2.0+sql server2000.


<
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
>
在网上也查了不少的资料,但还是没有吧问题解决了。就在我正在郁闷的时候有人说早上,网管用这台机子了,我就去问网管对服务器做了什么修改,他说:吧Administrator的密码改了,(我们用是administrator组的一个成员,dbserver用户登录的,虽然他吧密码了,我们照样可以访问服务器,因为是用dbserver用户登录,变个密码并没有改。)后来吧,administrator的密码改成来密码就可以,一切正常。

mayonglong 2010-05-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 q107770540 的回复:]
数据库外围配置内设置允许TCP/IP 访问
[/Quote]

试试
懦芞 2010-05-12
  • 打赏
  • 举报
回复
这个问题我没有遇到过,在网上找了一下,你看看
解决方法:开始->所有程序->Ms Sql Server->配置工具->sql server外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的Database Engine 节点,先择"远程连接",接下建议选择"同时使用TCP/IP和named pipes",确定后,重启数据库服务就可以了.


如果还出现错误的话 那么请你检查一下所写的代码connectionString中的Data Source这个属性填写的值是否正确 本机默认填写.\SQLEXPRESS 或者换成 计算机名\SQLEXPRESS ...
q107770540 2010-05-12
  • 打赏
  • 举报
回复
数据库外围配置内设置允许TCP/IP 访问
xxfxiazai 2010-05-12
  • 打赏
  • 举报
回复
急 我顶

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧