您的位置:首页 > 运维架构 > Linux

sqlserver freetds配置在 linux上

2016-10-25 19:05 766 查看
# 下载 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"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: