2012-10-16 138 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