Linux下php连接sql server 2008

 

1、安装配置freetds 

wget http://mirrors.xmu.edu.cn/ubuntu/archive/pool/main/f/freetds/freetds_0.82.orig.tar.gz 
tar zxf freetds_0.82.orig.tar.gz 
cd freetds_0.82 
./configure --prefix=/sxmobi/Software/common/freetds --enable-msdblib
make && make install 

2、编译mssql扩展,假设PHP安装源码包为/usr/local/src/php-5.3.1

1) 进入模块源码目录,>cd /sxmobi/web/softbak/php-5.3.13/ext/mssql
2) 生成编译配置文件,>/sxmobi/Software/webserver/php/bin/phpize
3) 安装,>./configure --with-php-config=/sxmobi/Software/webserver/php/bin/php-config --with-mssql=/sxmobi/Software/common/freetds
4) >make
5) >make install
6) 把生成的mssql.so模块复制到PHP的扩展目录,修改php.ini,加入mssql模块
注:
在编译配置的时候可能会遇到找不到FreeTDS的错误:configure: error: Directory /usr/local/freetds is not a FreeTDS installation directory,按照官方的解释http://www.freetds.org/news.html
,PHP检测一些文件以确定FreeTDS是否安装,由于新版的FreeTDS不再安装这些文件,导致PHP编译失败。只需建立两个空文件即可。如下:
>touch /usr/local/freetds/include/tds.h
>touch /usr/local/freetds/lib/libtds.a

3、修改/etc/freetds/freetds.conf

[server2008]
        host = 192.168.0.109
        port = 1433
        tds version = 7.0
	client charset = utf8



4,测试连接

./tsql -S 192.168.0.109 -U 用户名 -P 密码 -D 数据库
如果可以有看到1>说明连接成功
输入sql语句
1>select * from table;
2>go

  

posted on 2012-11-02 22:48  E猫  阅读(1243)  评论(0编辑  收藏  举报

导航