linux下 采用freetds 连接sqlserver2008

我主要参考了官方文章

要注意的几点

1、编译freetds(需要下载)的时候,请先添加--prefix=安装目录  --with-tdsver=7.1  //这个必须在7.0以上的 来自官方文档

./configure  --prefix=/opt/freetds  --with-tdsver=7.1

2、另外php连接的时候还需要添加pdo_dblib(除了这个之外还有其他2种方式)

3、编译pdo_dblib的时候 一定要指定freetds安装目录,否则会连不到 参数如下

./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-dblib=/opt/freetds


4、安装好后 用tsql进行测试  查看freetds版本用以下命令

[root@localhost pdo_dblib]# tsql -C
Compile-time settings (established with the "configure" script)
                            Version: freetds v0.91
             freetds.conf directory: /opt/freetds/etc
     MS db-lib source compatibility: no
        Sybase binary compatibility: no
                      Thread safety: yes
                      iconv library: yes
                        TDS version: 7.1
                              iODBC: no
                           unixodbc: no
              SSPI "trusted" logins: no
                           Kerberos: no

5、测试命令如下:

[root@localhost pdo_dblib]# tsql -H 10.1.1.200 -p 1433 -U sa
Password:
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"

6、小技巧 添加ln -s快捷方式 这样你就可以用tsql命令啦

ln -s /opt/freetds/bin/tsql /usr/bin/tsql

7、pdo连接mssql方式

$dbh = new PDO("dblib:host=$hostdb;dbname=$dbname", $usr, $psw);


pdo连接mssql 3种方式如下(仅适用于linux下 windows下请看我的上一篇文章sqlServer)

http://php.net/manual/zh/ref.pdo-dblib.connection.php

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。