热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ASP.NET、IIS上,连接SQLServer失败,请大家帮忙分析一下好吗

开发环境:winXPIIS5.1,VS2008,ASP.net,windows2008,SQLSERVER2008(IIS和SQLServer在分别在两台机器上)※在域内开发,也就
开发环境: winXP IIS5.1,VS2008, ASP.net,windows 2008, SQL SERVER2008  (IIS和SQLServer在分别在两台机器上)
※在域内开发,也就是说,两台机器都加入了域。

代码大致:把DB中某个表中的数据个数取出(select count(*) from TableA),显示到画面。
在VS2008开发环境中可以正常连接DB,但是发布到IIS中后,在连接(openDB)数据库的时候,出现以下错误。
用的连接的认证方式是windows认证(Integrated Security=SSPI;),SQL SERVER2008的认证设置是混合认证。
cOnnectionString="Server=XXX\SQLSERVER2008;Initial Catalog=AAAMaster;Integrated Security=SSPI; Persist Security Info=False;Connect Timeout=40;

用SQL Server认证方式也连接失败。

System.Data.SqlClient.SqlException: SQL Server への接続を確立しているときにネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないかアクセスできません。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。 (provider: 名前付きパイプ プロバイダ, error: 40 - SQL Server への接続を開けませんでした)

错误信息的意思是,
确立对服务器的连接的时候错误发生了。如果连接到SQL Server 2005 的时候时候这个错误发生了,有SQL Server 的既定的设定不变得准许远程连接的事作为错误的原因的可能性。 (没开对provider:名字附着管子 服务提供商, error:40- SQL Server 的连接) 


通过下面的代码,可以判断当前的用户名。
this.LabelUser.Text = System.Security.Principal.WindowsIdentity.GetCurrent().Name;

IIS环境和VS2008环境,访问web时用的用户名是不一样的。
VS2008:  域名/域用户
IIS环境:   winxp的computer名/APNET

在SQLSERVER上,有一个セキュリティ(安全) >> ログイン(登陆)
可以在这里添加用户,目前已经添加了我的域用户了,所以,在VS2008上,可以访问数据库。
但是没有添加我的ASPNET用户,所以不能被SQLServer认证,所以连接数据库失败。
怎么往SQLSERVER添加我的机器的ASPNET用户呢??????????


寻找正在学习SilverLight的朋友!!!
msn:lixing2002115@hotmail.com

11 个解决方案

#1


日文版? 厉害

#2


需要在数据库服务器上启用 SQL Browse服务。另外,数据库的端口设置检查是否正确,并且没有被防火墙阻止

#3


命名管道提供程序, error: 40 - 无法打开到SQL Server 的连接
使用windows和sql server混合认证
在远程连接里,同时使用TCP/IP和named Pipes,重启SQLserver服务
防火墙是否阻止了端口
启动SQL Server Browser服务

#4


SQL Server 的TCP/IP服务禁止的,打开它重启就行了

#5


引用 1 楼 lovexilove 的回复:
日文版? 厉害


干的是对日的开发。

#6


纠正错误
IIS环境:   winxp的computer名/APNET 
                                 ↓↓↓
                                 ASPNET  

#7


lz需要好好补习一下ASP.NET impersonation和delegation。

http://msdn.microsoft.com/en-us/library/ms998351.aspx

#8


各位大侠,今天我一一试试你们的建议。先谢谢了啊

#9


引用 2 楼 net_lover 的回复:
需要在数据库服务器上启用 SQL Browse服务。另外,数据库的端口设置检查是否正确,并且没有被防火墙阻止


我刚才把windows防火墙设置为无效(就是关闭防火墙吧。我用的是日文系统,中文系统是什么我忘了),
可以连接数据库了,并取出数据了。
也就是说,我的防火墙没有设置好。

另外,我的数据库服务器的Sql Server Configuration Manager中的SQL Server Browser服务是实行中状态,
已经启用了。

#10


嗯!

#11


汇报结果

先说一句,感谢各位给我这么多建议,非常的谢谢啊。

各位给我的建议我没有都试,现在已经有2个方法可以连接数据库了。
解决办法1:
    这好像叫伪装,第一次听说。
  在 Web.config 的System.web 标签里设置以下的内容
          userName="domain\username"
          password=""/>
用户名和密码就用Windows登陆域帐户就可以了。

解决办法2:
     http://msdn.microsoft.com/ja-jp/library/ms175043.aspx
  ① [Windows ファイアウォール] ダイアログ ボックスで、[例外] タブをクリックし、[プログラムの追加] をクリックします。
  ② [参照] をクリックし、ファイアウォール経由でアクセスする SQL Server のインスタンスに移動して、[開く] をクリックします。既定では、SQL Server は C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Sqlservr.ex にあります。
  ③ [OK] を 2 回クリックし、Windows ファイアウォール プログラムを閉じます。
    

目前已经在XP的机器(找了一台做数据库服务器)上,试验成功。我马上找项目经理汇报,看看采用那个方案。

推荐阅读
  • 本指南介绍了如何在ASP.NET Web应用程序中利用C#和JavaScript实现基于指纹识别的登录系统。通过集成指纹识别技术,用户无需输入传统的登录ID即可完成身份验证,从而提升用户体验和安全性。我们将详细探讨如何配置和部署这一功能,确保系统的稳定性和可靠性。 ... [详细]
  • 在运行于MS SQL Server 2005的.NET 2.0 Web应用中,我偶尔会遇到令人头疼的SQL死锁问题。过去,我们主要通过调整查询来解决这些问题,但这既耗时又不可靠。我希望能找到一种确定性的查询模式,确保从设计上彻底避免SQL死锁。 ... [详细]
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • iOS snow animation
    CTSnowAnimationView.hCTMyCtripCreatedbyalexon1614.Copyright©2016年ctrip.Allrightsreserved.# ... [详细]
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
  • Keepalived 提供了多种强大且灵活的后端健康检查机制,包括 HTTP_GET、SSL_GET、TCP_CHECK、SMTP_CHECK 和 MISC_CHECK 等多种检测方法。这些健康检查功能确保了高可用性环境中的服务稳定性和可靠性。通过合理配置这些检查方式,可以有效监测后端服务器的状态,及时发现并处理故障,从而提高系统的整体性能和可用性。 ... [详细]
  • 本文详细介绍了使用 Python 进行 MySQL 和 Redis 数据库操作的实战技巧。首先,针对 MySQL 数据库,通过 `pymysql` 模块展示了如何连接和操作数据库,包括建立连接、执行查询和更新等常见操作。接着,文章深入探讨了 Redis 的基本命令和高级功能,如键值存储、列表操作和事务处理。此外,还提供了多个实际案例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 在使用 SQL Server 时,连接故障是用户最常见的问题之一。通常,连接 SQL Server 的方法有两种:一种是通过 SQL Server 自带的客户端工具,例如 SQL Server Management Studio;另一种是通过第三方应用程序或开发工具进行连接。本文将详细分析导致连接故障的常见原因,并提供相应的解决策略,帮助用户有效排除连接问题。 ... [详细]
  • 如何使用mysql_nd:Python连接MySQL数据库的优雅指南
    无论是进行机器学习、Web开发还是爬虫项目,数据库操作都是必不可少的一环。本文将详细介绍如何使用Python通过 `mysql_nd` 库与 MySQL 数据库进行高效连接和数据交互。内容涵盖以下几个方面: ... [详细]
  • 使用Tkinter构建51Ape无损音乐爬虫UI
    本文介绍了如何使用Python的内置模块Tkinter来构建一个简单的用户界面,用于爬取51Ape网站上的无损音乐百度云链接。虽然Tkinter入门相对简单,但在实际开发过程中由于文档不足可能会带来一些不便。 ... [详细]
  • 一、Tomcat安装后本身提供了一个server,端口配置默认是8080,对应目录为:..\Tomcat8.0\webapps二、Tomcat8.0配置多个端口,其实也就是给T ... [详细]
  • SqlServer级联删除两种实现方法:触发器,外键
    --触发器createtrigger[dbo].[tri_account]on[dbo].[account]fordeleteasdeleteaccountBackwhe ... [详细]
  • 6.1WMLScript规则这些标准函数库提供一个扩展WMLScript语言的机制,这些 ... [详细]
  • MSsqlserver服务快速打开和停止
    此篇基础,希望能够帮助已经入坑的同学!!对于用MSSQLserver熟悉的人来说,快速开启和关闭是孰能生巧了。对于刚刚接触的人来说开启管理去打开,实在是麻烦,等待时间太长好了,我们开始开启步骤:按键盘 ... [详细]
  • 关于SQLSERVER的全文目录跟全文索引的区别
    很久没有写随笔了,本来之前想写一篇关于SQLSERVER全文索引的随笔,可惜没有时间,一直拖到现在才有时间写,不好意思让各位久等了~先介绍一下SQLSERVER中的存储类对象,哈哈,先介绍一下概念嘛 ... [详细]
author-avatar
手机用户2602919547
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有