【问题标题】:Cannot connect to SQL SERVER 2000 with php [duplicate]无法使用 php 连接到 SQL SERVER 2000 [重复]
【发布时间】:2012-10-29 17:59:10
【问题描述】:

可能重复:
Cannot connect to SQL SERVER 2000

我正在使用 php 5.3.1 连接到远程机器上的 SQL SERVER 2000。我使用 Windows XP。 关于使用这样的简单程序:

$conn = mssql_connect("VBNET","sa","anythinghere") or die ( 'Can not connect to server' );

我收到以下错误:

警告:mssql_connect() [function.mssql-connect]:消息:用户“sa”登录失败。原因:未与受信任的 SQL Server 连接关联。 (严重性 14)在 C:\wamp\www\Mssql\test.php 第 8 行

警告:mssql_connect() [function.mssql-connect]:无法连接到服务器:第 8 行 C:\wamp\www\Mssql\test.php 中的 VBNET 无法连接服务器

我在我的 SQL SERVER 中启用了 TCP/IP 和命名管道并重新启动它。其身份验证也设置为混合模式身份验证。那么我在这里缺少什么?

提前致谢。

编辑 这个问题最初是关于 SQL SERVER 2008 但后来我才知道它是 SQL SERVER 2000。请原谅我的无知,但问题仍然存在存在。所以请给我建议。

【问题讨论】:

    标签: php sql sql-server sql-server-2000


    【解决方案1】:

    设置 SQL Server 安全身份验证时会出现此问题 仅适用于 Windows,并且以下条件之一为真

    • 您正在尝试使用 SQL Server 登录名连接到 SQL Server 数据库。
    • 您正在尝试连接到安装在 Microsoft Windows 上的 SQL Server 2000 桌面引擎(也称为 MSDE 2000)数据库 使用受信任的 SQL Server 连接的基于 98 的计算机。
    • 您正在尝试从没有足够权限连接到 SQL Server 数据库的 Windows 帐户连接到 SQL Server 数据库
      服务器。

    要解决此问题,请根据您遇到的症状使用以下方法之一:

    - SQL Server 登录

    使用有效的 Windows 登录名连接到 SQL Server。如果你必须 继续使用 SQL Server 登录,可以更改安全性 SQL Server 到 SQL Server 和 Windows 的身份验证模式。去做 这个,请按以下步骤操作:

    1. 启动企业管理器。
    2. 展开 Microsoft SQL Servers,然后展开 SQL Server Group。
    3. 右键单击要更改为 SQL Server 的服务器,然后 Windows 身份验证,然后单击“属性”。
    4. 在 SQL Server 属性对话框中,单击安全选项卡, 单击 SQL Server 和 Windows,然后单击确定。
    5. 当系统提示您重新启动 SQL Server 服务时,单击是。

    - 权限不足的 Windows 帐户

    要解决此问题,您必须将 Windows 帐户添加到 SQL 服务器,然后授予每个数据库相应的权限 用户需要访问的。要在 SQL Server 2000 中执行此操作, 请按照以下步骤操作:

    1. 启动企业管理器。
    2. 展开 Microsoft SQL Server,然后展开 SQL Server 组。
    3. 扩展您的服务器,然后扩展安全性。
    4. 右键单击登录名,然后单击新建登录名。
    5. 在 SQL Server 登录属性对话框中,输入 Windows 名称框中的帐户名称。在域列表中,选择域 Windows 帐户是其成员。
    6. 单击“数据库访问”选项卡,为 客户端,然后单击“确定”。

    http://support.microsoft.com/kb/889615

    【讨论】:

    • @hermann-我们的服务器模式设置为混合模式身份验证,并且我被提供了足够的权限......那么可能是什么问题??
    • @NilayOnAndroid 您找到解决问题的方法了吗?尝试使用此设置。尝试将其设置为仅服务器身份验证(如果有这样的事情)。
    • @hermann-我最近发现我的服务器实际上是 SQL SERVER 2000 而不是 2008 ..所以这可能是问题吗?如果是,那么解决方案是什么??
    • @NilayOnAndroid 是 'sa' SQL 或 Windows 帐户登录?
    • @hermann sa 是默认的超级管理员,即安装的 SQL Server 用户。 (也就是说;除非 OP 专门做了一些事情来改变事情,否则它是 SQL 登录)
    【解决方案2】:

    请查看 Microsoft 知识库文章 889615 以获取解决方案。我发现这是在 Google 搜索您的错误消息:“与受信任的 SQL Server 连接相关联”。

    【讨论】:

    • @Dalyn-我们的服务器模式设置为混合模式身份验证,并且我被提供了足够的权限......那么可能是什么问题??
    • @Dalyn- 请查看我编辑的问题
    • 请查看可能与此问题相关的重复问题,看看是否能解决您的问题。
    • @Dalyn-这是我的问题,我投票支持 Exact Duplicate 部分......但感谢所有帮助......我解决了这个问题!
    猜你喜欢
    • 2011-12-03
    • 2010-10-05
    • 2016-11-08
    • 2018-06-19
    • 1970-01-01
    • 2016-03-25
    • 1970-01-01
    • 2014-11-07
    • 1970-01-01
    相关资源
    最近更新 更多