2012-10-16 137 views
2

我有一個LAMP服務器(Ubuntu 12.04,Apache/2.2.22,MySQL 5.5.24,PHP 5.3.10)。 不過我也想使用Apache & PHP 用的憑據連接到其他MSSQL服務器另一臺機器上:使用LAMP連接到MSSQL服務器

Server name: HENYO-GP-TEST\HENYO_GPTEST 
IP: 192.168.1.36 
Username: someuser 
Password: somepass 
Database: somedb 

我已經安裝使用FreeDTS「的apt-get安裝freetds的常見freetds的斌的unixODBC php5- SYBASE '然後通過將其配置 'VIM /etc/freetds/freetds.conf' 然後編輯該底部部分這樣

# A typical Microsoft server 
[192.168.1.36] 
host = 192.168.1.36 
port = 1433 
tds version = 8.0 

但在使用時的測試' TSQL -S 192.168.1.36 -U SomeUser是否-P somepass - D somedb',發生以下錯誤。

locale is "en_PH.UTF-8" 
locale charset is "UTF-8" 
using default charset is "UTF-8" 
Default database being set to FAC 
Error 20009 (severity 9): 
    Unable to connect: Adaptive Server is unavailable or does not exist 
    OS error 111, "Connection refused" 
There was a problem connecting to the server 

但我知道服務器是打開的,因爲我可以ping它。

是否可以使用LAMP連接到MSSQL服務器(駐留在其他機器上)? 如果有可能?我的安裝和配置有什麼錯誤?提前致謝。

回答

1

ping服務器並不一定意味着某個特定端口是開放的;它可能會響應ICMP請求,但不能保證給定端口是開放的。您是否確認遠程服務器上的端口1433已打開,並且沒有阻塞到該端口的流量?

+0

謝謝,它可以幫助我找出什麼是錯的。 – Ryan

1

您的SQL Server正在名爲HENYO_GPTESTHENYO-GP-TEST是服務器名稱,HENYO_GPTEST是實例名稱)的實例上運行,但您沒有在任何地方指定此實例名稱。

我對FreeTDS並不熟悉,所以我不知道如何指定,但是您需要指定這個實例名稱才能連接到服務器。

+0

謝謝,這有助於我弄清楚什麼是錯的。 – Ryan