用户 '(null)' 登录失败错误解决

好端端的系统在本地运行OK,在Web服务器上运行却出现:

用户“NULL”登录失败,原因:未与信任SQL SERVER相连队关连

郁闷一下,在系统多次升级都没出现这问题,只能“百度一下”,看到的结果大都是说"相关权限问题“,可是,我的权限完全符合要求。最终还是MSDN的提示,让我解决了这个蹊跷的问题..


用户 登录失败

该错误可能存在多种形式,如:

用户‘(null)’登录失败

用户 domain\username 登录失败

用户 computer\ASPNET 登录失败

原因很可能是您正在使用 Web 应用程序,并且正在试图访问运行 Microsoft SQL Server 的计算机。所引发的具体错误或异常取决于 Web 服务器是否也在运行 SQL Server。发生该问题是因为 Web 应用程序未向 SQL Server 传递有效的凭据。通常,可以执行下列操作之一来解决此问题:

如果 Web 服务器也在运行 SQL Server,请向本地 ASPNET 用户授予该服务器的登录特权(Windows 2000 和 Windows XP)或向 NT AUTHORITY\NETWORK SERVICE 授予该服务器的登录特权 (Windows Server 2003)。

[color=Green]如果 SQL Server 正在远程计算机上运行,并且 Web 服务器正在运行 IIS 6.0,请向 Web 服务器的计算机帐户授予远程计算机的登录特权。计算机帐户是指 DOMAIN\MACHINENAME$。


设置 ASP.NET,使它以在运行 SQL Server 的计算机上拥有登录特权的 Windows 域用户身份运行。

使用连接字符串,以便使用 SQL Server 标准安全性。为此,必须配置具有显式用户 ID 和密码的连接字符串。[/color]
http://msdn2.microsoft.com/zh-cn/library/ab4e6cky(vs.80).aspx


我的错误是就是这条了:如果 SQL Server 正在远程计算机上运行,并且 Web 服务器正在运行 IIS 6.0,请向 Web 服务器的计算机帐户授予远程计算机的登录特权。计算机帐户是指 DOMAIN\MACHINENAME$

用比较熟悉的话来说就是:我在我的本地上一直用着服务器上的SQL Server中的数据,而现在同时又在服务器端运行系统,同时服务器端和本地机都在占用同一个登录SQL Server登录的用户名,所以就会报"用户‘(null)’登录失败"

我的解决方法是:

1.把本地机上运行在服务器的数据库断开,这是最快的办法了

2.在系统中修改用户名,在所运用到的数据库或SQL Server中新建一个用户名,这个用户名就是你的应用系统专用的登录用户名。这样估计可以保证不会相冲突了。


一点小经验,与大家分享。多多指教.

[本日志由 admin 于 2008-05-10 11:04 PM 编辑]
上一篇: Web技术期刊2007年第7期(总第20期)
下一篇: 没有钱,你能做什么?
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 1 | 引用: 0 | 查看次数: 23437
游客[2010-05-21 08:21 PM | | | 121.11.180.215 | del | 取消审核 | 回复回复]
什么什么啊?完全不明白你在说什么?
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 30 字 | UBB代码 关闭 | [img]标签 关闭