当前位置: 首页 > 工具软件 > FreeTDS > 使用案例 >

sqlserver freetds配置在 linux上

洪黎昕
2023-12-01
# 下载 freetds,可下载最新 ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz
$ wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-0.95.92.tar.gz

# 解压
$ tar -zxvf freetds-0.95.92.tar.gz

# 进入解压后的目录,注意版本号
$ cd freetds-0.95.92

# 查看当前支持的 tdsver 版本,选择对应支持的 MSSQL 版本
$ ./configure --help

# 重编译安装,注意 tdsver 版本
$ ./configure --prefix=/usr/local/freetds --enable-msdblib --with-tdsver=7.3
$ make && make install

注:MS官网的速度太慢,可直接进FTP下载文件包后上传到服务器进行安装。

整理注释

针对上述命令行中一些简单注释:


--prefix=/usr/local/freetds	FreeTDS的默认安装目录 /usr/local/freetds
--enable-msdblib		允许 Microsoft 的函数库

--with-tdsver=7.3 指定TDS的协议版本,不填写则默认5.0版,7.3支持MSSQL2008。

$ vi /usr/local/freetds/etc/freetds.conf

# 针对 MSSQL 修改配置
# A typical Microsoft server
[mssql_test]
        # 这是MSSQL服务器IP/端口号
        host = 1.2.3.4
        port = 1433
        tds version = 7.3
        client charset=UTF-8  #确保中文无乱码



检测是否成功:

$ cd /usr/local/freetds/bin
$ ./tsql -C

Compile-time settings (established with the "configure" script)
                            Version: freetds v0.95.92
             freetds.conf directory: /usr/local/freetds/etc
     MS db-lib source compatibility: yes
        Sybase binary compatibility: no
                      Thread safety: yes
                      iconv library: yes
                        TDS version: 7.3
                              iODBC: no
                           unixodbc: no
              SSPI "trusted" logins: no
                           Kerberos: no
                            OpenSSL: no
                             GnuTLS: no

更详细的的配置可官方文档:http://www.freetds.org/userguide/config.htm

尝试连接MSSQL

进入 freetds 安装目录,执行如下命令:


深度连接:

$ cd /usr/local/freetds/bin
$ ./tsql -H 192.168.0.254 -p 1433 -U sa -P 123456

# 进入mssql模块源码目录
$ cd php-5.4.41/ext/mssql

# 生成编译配置文件
$ /usr/local/php/bin/phpize

# 编译安装
$ ./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds
$ make && make install

make install 之后的运行结果:




$ vi /usr/local/php/etc/php.ini

# 启用如下,如无则添加。(在vi状态中可使用 /extension 来搜索,按n搜索下一项)
extension = "mssql.so"


 类似资料: