你目前正处于脱机状态,正在等待 Internet 重新连接

如何解决错误 15401

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 324321
概要
当您在 Microsoft Windows NT 用户或 Microsoft Windows NT 组作为登录帐户添加到 Microsoft SQL Server,或者当从一个域中的服务器登录移到另一个域中的服务器时,您可能看到以下错误:
错误 15401: Windows NT 用户或组 %s 找不到。再次检查该名称。
本分步指南介绍了其中的错误,如何解决此问题的可能原因。

back to the top

登录名不存在

  1. 验证的 Windows 登录名仍然存在的域中。您的网络管理员可能已删除 Windows 登录,出于特定原因,并且您可能无法以该登录访问权授予 SQL Server。
  2. 验证您正确拼写检查的域和登录名和您正在使用以下格式:
    \用户
  3. 如果存在登录,和它正确,并且您仍然收到错误消息,继续执行本文中的以下各节。
back to the top

重复的安全标识符

在 Windows 域中,唯一的安全标识符 (Sid) 自动指派给域中的 Windows 登录名。当您将某个 Windows 登录帐户添加为 SQL Server 登录时,SID 存储在 SQL Server 中的系统表中。如果您尝试添加新的登录具有相同的 SID 为现有的 SQL Server 登录,将出现 15401 错误。
注意在 SQL Server 2005,不允许有重复的 Sid。
  1. 要确定这是否将错误的原因,请运行下面的代码对主数据库时您登录到 SQL Server sysadmin角色的成员身份:
    SELECT name FROM syslogins WHERE sid = SUSER_SID ('YourDomain\YourLogin')
  2. 如果该查询返回一行,则重复 SID 是问题的您的原因。
  3. 这种情况的一个潜在的原因从另一个域中服务器加载 master 数据库。此域中的登录名之一可能已经为想要在此域中添加的登录相同的 SID。这也可能在您拥有克隆或 ghost 系统环境中发生。
  4. 必须使用sp_revokelogin来除去该登录具有匹配的 SID,或者,若要保留现有的登录名,正确地将映射从旧的域到新域中的登录名登录。 有关如何执行此操作的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    314546如何在运行 SQL Server 的计算机之间移动数据库
back to the top

身份验证失败

由于某种原因无法访问登录所在 (相同或不同的域) 的域的域控制器时,您可能会收到错误 15401。
  1. 如果在 SQL Server 的不同域中的登录,请验证正确的信任关系在域之间存在的。
  2. 验证登录的域控制器可访问使用运行 SQL Server 的计算机上的ping命令。检查 IP 地址和域控制器的名称。
    有关 ping 命令的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    102908如何解决与 Windows 2000 或 Windows NT 的 TCP/IP 连接问题
back to the top

大小写敏感性

您可能遇到以下 Microsoft 知识库文章中描述的区分大小写问题:
245768 区分大小写 Unicode 排序序列和 Windows NT 登录
在此情况下,使用sp_configuresp_helpsort存储过程来确定排序顺序或您的 SQL Server 实例的排序规则是否区分大小写。如果该服务器是区分大小写,请按照中所引用的文章 (Q245768) 成功添加登录的步骤。

2770837 修复:"Windows NT 用户或组 Domain_name\User_name 未找到"错误消息时您将登录添加到一个区分大小写的 SQL Server 2008年实例
在此情况下,当您尝试将 Microsoft Windows NT 用户或组作为登录名添加到 SQL Server 2008年时出现问题。如果该服务器是区分大小写,请参阅更新 2770837 中的"解决办法"部分。

back to the top

本地帐户

本地 (非域) 帐户需要进行特殊处理。如果您正在从运行 SQL Server 的本地计算机添加本地帐户,请查看以下 Microsoft 知识库文章有关正确的步骤:
322988 在 Microsoft Windows NT 4.0 上的 sp_grantlogin"NT AUTHORITY\SYSTEM"失败
  1. 若要添加在本地系统帐户作为 Windows NT 4.0 上的 SQL Server 登录,查看 Q322988 的 Microsoft 知识库文章中的过程。
  2. 添加预定义本地组时,您必须使用内建作为域。
    有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    216808使用 BUILTIN\Group 预定义的 Windows NT 组授予访问权限
back to the top

名称解析

如果必须添加登录或组中涉及到的计算机的名称解析问题,您可能会收到错误 15401。

验证您名称解析机制 (例如,WINS、 DNS、 主机或 LMHOSTS) 配置是否正确。

back to the top

警告:本文已自动翻译

属性

文章 ID:324321 - 上次审阅时间:11/27/2012 06:13:00 - 修订版本: 1.0

Microsoft SQL Server 2000 64-bit Edition, Microsoft SQL Server 2000 标准版, Microsoft SQL Server 7.0 标准版, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL 2005 Server Enterprise, Microsoft SQL 2005 Server Workgroup

  • kbhowtomaster kbmt KB324321 KbMtzh
反馈