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

出现“SQL Server Does Not Exist or Access Denied”(SQL Server 不存在或访问被拒绝)错误消息的可能原因

概要
“SQL Server does not exist or access denied”是一条普通的 Microsoft 数据访问组件 (MDAC) 消息,它表示无法联系正在运行 Microsoft SQL Server 的计算机。这条普通的消息有多种可能的原因。本文“更多信息”部分介绍了一些最常见的原因。

注意:类似的原因还可能引发以下错误消息:
SQL Server is unavailable or does not exist
The specified SQL Server is not found
更多信息
错误消息“SQL Server does not exist or access denied”表示存在以下情况:
  • 到 SQL Server 的登录过程失败。
  • SQL Server 没有处理该查询的正确权限。
  • 由于只允许 Windows 身份验证而不能使用 SQL Server 身份验证。

可能的原因

与服务器相关的原因

如果客户端计算机无法连接到运行 SQL Server 的计算机,则可能是服务器端出现了问题。
  • SQL Server 未安装到您在连接字符串中指定的计算机上。验证 SQL Server 是否确实安装到了您在连接字符串中指定的计算机上。
  • SQL Server 未启动。SQL Server 必须运行以接受连接。
  • SQL Server 没有侦听您用来进行连接的协议或端口。服务器上的服务器网络实用工具确定 SQL Server 将使用哪些协议以及 SQL Server 将在哪些 TCP/IP 端口上侦听。客户端网络实用工具、MDAC 数据源名称 (DSN) 或者您的连接字符串都可以确定客户端计算机连接时所使用的协议和端口。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    289573PRB:使用 SQL Server Net-Libraries(SQL Server 网络库)配置 DSN
    328383 当客户端计算机尝试连接到 SQL Server 实例时,SQL Server 客户端可能会更改协议
  • 当 SQL Server 启动时,它无法侦听指定的 TCP/IP 端口,并且不接受 TCP/IP 连接。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    293107PRB:TCP\IP 端口正由另一应用程序使用
  • SQL Server 名称与计算机名称不相同。 有关 SQL Server 2000 中此问题的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    303774BUG:SQL Server 联机图书中的“重命名服务器”主题不完整
    有关 SQL Server 7.0 中此问题的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    195759INF:常见问题 - SQL Server 7.0 - SQL 安装
    有关群集环境中的 SQL Server 中此问题的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    307336如何更改群集 SQL Server 网络名称
  • 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    298822FIX:多主计算机上的 MSDE 连接可能会失败
  • 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    306199FIX:动态 IP 地址无法连接到 SQL Server 2000
  • 从 SQL Server Desktop Engine(也称为 MSDE 2000)Service Pack 3 (SP3) 或 SP3a 开始,默认情况下只允许本地连接。如果想允许远程连接到 SQL Server Desktop Engine,请按照下面文章中的步骤操作:
    814130 如何加强 SQL Server 2000 本地数据库的网络连接安全性

与客户端或应用程序相关的原因

如果有些客户端计算机或应用程序能够连接,但其他一些不能连接,那么您遇到的很可能是客户端问题。
  • 计算机名称不存在。重新检查您尝试连接的计算机的名称拼写。
  • 您尝试访问一个命名的 SQL Server 实例,但是没有指定正确的实例名称。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    265808如何用早期版本的 SQL Server 中的客户端工具连接到 SQL Server 2000 或 SQL Server 2005 的命名实例
  • 您正用来进行连接的 Windows 级安全性与您预期的不同。例如,Microsoft Internet 信息服务 (IIS) 使用的是 IUSR_computername,而不是根据您配置 IIS 的方式使用您的 Windows 登录帐户或其他帐户。此外,链接的服务器在某些情况下使用“SQL Server 代理”的 Windows 级安全上下文。您正在使用的帐户的安全上下文可能无权访问安装 SQL Server 的计算机。
  • 您未使用正确的协议。检查“客户端网络实用工具”(CNU) 以确认您正在使用的协议(对于早期的 MDAC 版本,设置默认值而不是启用协议)。另外,确认在 CNU 中是否有一些定义的别名所指定的协议和/或端口并不是您所预期的。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    328383当客户端计算机尝试连接到 SQL Server 实例时,SQL Server 客户端可能会更改协议
    289573 PRB:使用 SQL Server Net-Libraries(SQL Server 网络库)配置 DSN
  • 您从客户端计算机上的网络属性中删除了“Microsoft Networks 网络客户”组件。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    253959从网络适配器解除 Microsoft 网络客户端绑定后,它仍然可以工作
  • 如果 SQL Server 是集群服务器,则网络适配器可能未正确命名或配置。如果有任何网络适配器是用特殊字符或混合大小写命名的,请重新命名它们。验证计算机上的网络适配器是否配置正确。
  • MDAC 不匹配可能会带来一些副作用。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    307255组件检查器:诊断问题并重新配置 MDAC 安装
  • 检查以下注册表子项中指定的协议:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo\DSQUERY
    该值通常反映了 CNU 中的设置,但有时候也可能不反映。如果该值为 DBNETLIB,它将使用 CNU 的启用的协议列表中的协议之一。如果列出了某个特定的协议,则将使用此协议。
  • 您尝试通过命名管道进行连接,但可能 SQL Server 侦听的命名管道已更改了默认设置,或者您使用的管道名称不正确。

    对于默认实例,请在“服务器网络实用工具”中使用以下管道:
    \\.\pipe\sql\query
    对于命名实例,请使用:
    \\.\pipe\MSSQL$instancename\sql\query
  • 您指定的 DSN 的类型不正确(文件、用户或系统)。 有关不同类型 DSN 的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    213772如何在 Excel 2000 或 Excel 2002 中使用系统、用户和文件数据源名称 (DSN)
  • 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    290820BUG:SQL Desktop Edition:安装 MDAC 2.6 后共享内存无法连接

与网络或域相关的原因

如果仅在特定域中、特定子网上或防火墙后面的计算机上收到此错误消息,请检查下列问题。
  • 防火墙或路由器配置不当,或者被配置为禁止 UDP 端口 1434。如果 UDP 端口 1434 被禁止,您可能必须在来自客户端的连接字符串中指定 SQL Server 所侦听的端口。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    287932INF:通过防火墙与 SQL Server 进行通信所需的 TCP 端口
    318432 BUG:无法通过防火墙连接到群集命名实例
  • 为您的 Windows 帐户分配的本地安全策略用户权限不允许从网络进行访问。“从网络访问此计算机”策略必须得到允许。此外,一定不要启用“拒绝从网络访问这台计算机”权限。
  • 存在域信任问题,或者其中一台计算机在工作组中,因而无权访问此域。在某些情况下,要变通解决此问题,可以在双方计算机上创建相同的本地 Windows 帐户,并且每个帐户使用相同的密码。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    321247如何为日志传送配置安全设置
  • 名称解析无效。检查您使用的名称解析系统(如 DNS、WINS、hosts、lmhosts)中的设置。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    169790如何解决基本的 TCP/IP 问题
tcp/ip tcpip named pipes shared memory odbc mdac
属性

文章 ID:328306 - 上次审阅时间:05/16/2011 07:03:00 - 修订版本: 14.0

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

  • kbsqldeveloper kbinfo KB328306
反馈