首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用户'sa‘登录失败

用户'sa‘登录失败
EN

Stack Overflow用户
提问于 2012-01-05 07:21:07
回答 1查看 2.9K关注 0票数 1

我有一个计算机,A,与一个PHP程序,连接和操纵计算机B1中的数据库。为了连接到MS SQL服务器,我使用了以下脚本,它工作得很好。此SQL server上只有一个帐户,它是"sa“。

$server = 'WAREHOUSE1\MYDB';

$connectionInfo = array("UID" => "sa", "PWD" => "something", "Database"=>"MYDB");

$dbcMssql = sqlsrv_connect($server, $connectionInfo);

我们买了一台新电脑,B2,来代替这台电脑,因为它又旧又慢。我设置了新的数据库并从B1中恢复了它,设置了防火墙设置,就像在B1中一样,选中了“允许远程连接”,并在MS SQL Server Management Studio中选择了"SQL Swrver and Windows Auth. mode“等等。我能够使用MS SQL Server Management Studio从计算机A连接到计算机B1和B2上的数据库。我甚至使用相同的用户id ("sa")和密码将这些表链接到MS Access (OBDC数据库)。

问题是,在新的计算机B2上,我的PHP脚本不再工作,即使我可以使用MS程序连接到它。除了我在设置B1时已经做过的事情之外,我不记得我还设置了其他任何东西。sqlsrv_errors()中的错误如下所示。

[SQLSTATE] => 28000

[code] => 18456

[message] => [Microsoft][SQL Server Native Client 10.0][SQL Server]Login failed for user 'sa'.

由于某种原因,服务器文件夹上的errorlog文件中没有记录错误,因此我不知道错误的状态是什么。可能的问题是什么?今天下午我已经读了好几篇文章了,但是我不能让这篇文章工作起来!再说一次,从A连接到B1是正常的,这让我相信我没有在B2上设置什么。B1和B2具有相同版本的SQL server。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-05 07:30:06

IRC TCP/IP协议在默认安装时被禁用。您需要转到SQL Server Config并从那里启用它。

编辑:好的,再读一遍,如果你能够通过TCP/IP远程连接,那么它应该也能从你的PHP脚本中工作。您确定连接字符串最终指向正确的(B2?)服务器吗?这会是一个名称解析问题吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8735535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档