我有2台服务器:一台是OpenSUSE,另一台是SLES 11 sp2 Suse Linux Enterprise Server。
为了连接到MSSQL,我必须为php安装mssql.so。
OpenSUSE允许从rpm安装mssql。 SLES - 没有mssql rpm,这就是为什么需要编译它。
OpenSUSE:mssql rpm installed =>
$server="172.x.x.x:49888";
$username="username";
$password="password";
$link = mssql_connect($server, $username, $password);
这里成功连接到MSSQL!
SLES:使用mssql.so编译=>
$server="172.x.x.x:49888";
$username="username";
$password="password";
$link = mssql_connect($server, $username, $password);
错误:警告:mssql_connect():无法连接到服务器:172.x.x.x:49888
如果我编辑freetds.conf
#A typical Microsoft server
[Dovico]
host = 172.x.x.x
port = 49888
tds version = 7.0
并像这样更改php:
$server="Dovico";
$username="username";
$password="password";
$link = mssql_connect($server, $username, $password);
=>成功连接到MSSQL!
所以我的问题是如何使用这个在SLES上(使用mssql.so编译)的MSSQL连接
mssql_connect("172.x.x.x:49888", "username", "password");
并没有使用freetds.conf?
答案 0 :(得分:12)
修改freetds.conf
(取消注释并更改版本):
这
[global]
# TDS protocol version
; tds version = 4.2
到
[global]
# TDS protocol version
tds version = 7.0
并重新启动Apache。