2011-05-23 58 views
2

我們在Win server 2008 R2上使用MSSQL server 2008,並分別安裝了Apache (2.2.19)PHP (5.2.17)。我們INSTALLD PHP的MSSQL模塊和usingthe下面的連接字符串:用PHP連接到MSSQL server 2008

$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:PORTlocalhost\MSSQLSERVERCOMPUTERNAME\MSSQLSERVER但不要似乎得到任何地方,任何人都可以幫忙嗎?

+0

您是否嘗試過從Microsoft安裝較新的SQLSRV驅動程序,因爲MSSQL不再受支持?另外,'phpinfo()'是否確認PHP驅動程序的可用性? – Kalessin 2011-05-23 16:05:23

+0

試試看ntwdblib.dll - 看到這個答案:http://stackoverflow.com/a/470036/327074 – icc97 2013-07-23 09:56:57

+0

其實它看起來像這個問題只是http://stackoverflow.com/questions/469964/重複無法到連接到MSSQL數據庫,通過的PHP – icc97 2013-07-23 09:59:39

回答

1

有幾件事情浮現在腦海中:

1)確保您從MS有SQLSRV驅動程序包,並確保你正確加載在php.ini(使用phpinfo()函數來驗證)。

2)如果這是SQL Server的香草安裝,它可能只啓用了Windows身份驗證。打開SQL企業管理器並確保您的數據庫上啓用了SQL Server身份驗證。

3)確保您已啓用網絡訪問SQL Server。我不能立即確定新的MS驅動程序是使用命名管道與服務器通信,還是希望服務器將通過網絡訪問。

這些是我在PHP與新的MSSQL服務器通話時經常遇到的問題。