之前接的一个小项目,数据库是ms sql,但WEB服务器要求是linux,开发语言是PHP。所以捣腾了一下,留个记录:
1、打开http://www.freetds.org/,进入到http://www.freetds.org/software.html页面.下载
ftp://ftp.freetds.org/pub/freetds/current/freetds-current.tar.gz
下载好freetds文件:freetds-current.tar.gz
解压文件 tar -zxvf ./freetds-current.tar.gz
cd freetds-dev.0.99.557
./configure --prefix=/usr/local/freetds --enable-msdblib
make
make install
vim /usr/local/freetds/etc/freetds.conf
输入:
client charset = GBK
保存
然后:
vim /etc/ld.so.conf
输入:
/usr/local/freetds/lib
保存
执行ldconfig让配置生效
执下命令查看freetds是否成功:
/usr/local/freetds/bin/tsqltsql -C
出现以下内容则为安半成功:
接着执行以下命令,测是否可以连上mssql
/usr/local/freetds/bin/tsql -H 您的mssql数据库IP -p 1632 -U sa -P
安装PHP的freetds扩展
进入安装的PHP源码的目录对应的mssql扩展如:
cd /data/soft/php-5.4.41/ext/mssql
先执行:
/usr/local/php/bin/phpize
然后执行(注意PHP的安装目录,以及freetds的安装目录)
./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds
make
make install
接着修改php.ini文件(php5.4的执行完上面的操作会自动把新生成的扩展复制到PHP的目录里去的。
如果查看到php的目录里没有,则在php源码对应模块的module目录里有对应的*.so文件,
把对应的文件复制到PHP的安装目录/usr/local/php/lib/php/extensions/中就可以了。)
php5.4之后已经自动把扩展复制到了:/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/mssql.so
所以这里只需要修改php.ini里的扩展配置,把下面的内容加入到配置里就可以了
vim /usr/local/php/etc/php.ini
输入:
extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/mssql.so"
保存
然后重启WEB服务即可