我们在Win server 2008 R2上使用MSSQL server 2008,并分别安装了Apache (2.2.19)
和PHP (5.2.17)
。我们已经为PHP安装了MSSQL模块并使用以下连接字符串:
$myc = mssql_connect(Server, SiteDatabaseUsername, SiteDatabasePassword) or die('Can\'t connect to mssql Database Server: '.mssql_get_last_message($myc));
$db = mssql_select_db(SiteDatabaseName, $myc) or die('Can\'t find database: '.mssql_get_last_message($myc));
但它给了我们这个错误:
Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: localhost\MSSQLSERVER in D:\Apache2.2\htdocs\adminarea\_core.php on line 89
Can't connect to mssql Database Server:
我们使用了IP:PORT
,localhost\MSSQLSERVER
和COMPUTERNAME\MSSQLSERVER
,但似乎没有任何地方,任何人都可以帮忙吗?
答案 0 :(得分:1)
有些事情会浮现在脑海中:
1)确保您拥有MS的sqlsrv驱动程序包,并确保在php.ini中正确加载它(使用phpinfo()进行验证)。
2)如果这是一个SQL Server的vanilla安装,可能只打开了Windows身份验证。打开SQL企业管理器,确保在数据库上启用了SQL Server身份验证。
3)确保您已启用对SQL Server的网络访问。我不能立即确定新的MS驱动程序是否使用命名管道与服务器通信,或者是否希望通过网络访问服务器。
这些是我在让PHP与新的MSSQL服务器通话时经常遇到的问题。