【问题标题】:mssql_connect(): Unable to connect to server (without freetds.conf)mssql_connect():无法连接到服务器(没有 freetds.conf)
【发布时间】:2012-10-22 06:10:12
【问题描述】:

我有两台服务器:一台是 OpenSUSE,另一台是 SLES 11 sp2 Suse Linux Enterprise Server。

为了连接到 MSSQL,我必须为 php 安装 mssql.so。

OpenSUSE 允许从 rpm 安装 mssql。 SLES - 没有 mssql rpm,这就是为什么需要编译它。

OpenSUSE:已安装 mssql rpm =>

$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 连接(使用 mssql.so 编译)

mssql_connect("172.x.x.x:49888", "username", "password");

不使用 freetds.conf 吗?

【问题讨论】:

  • 获取mssql的opensuse srpm并在sles上编译?

标签: php sql-server freetds


【解决方案1】:

编辑freetds.conf(取消注释并更改版本):

来自

[global]
        # TDS protocol version
;   tds version = 4.2

[global]
        # TDS protocol version
    tds version = 7.0

并重新启动 Apache。

【讨论】:

  • 嗨 ihtus。如果有人编辑了与帖子无关的闲聊材料,请不要这样做。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-08
  • 2020-01-24
相关资源
最近更新 更多