Linux(CentOS 5.1)上安装MSSQL扩展以及PDO支持

6053阅读 1评论2010-05-21 dearyzy
分类:系统运维

按手册,一开始安装FreeTDS,然后按部就班的安装 mssql 以及 pdo_dblib ,基本上不可能过去

总是报错:

configure: error: Directory /usr/local/freetds is not a FreeTDS installation directory

本着外事不知问Google的原则,我发现这个世界上居然有n多人都遇到了这个问题,但就是没有一个解决方法。实在没得办法了之后上 bugs.php.net 搜了一下,相必有人应该已经报了bug了,果然,它终于体现了它专业的优势

#44991 Compile Failure With freetds0.82
()

找到问题所在,后面的东西就太好办了

高版本的不让装,低版本的还不么,低于 0.82 的最新的就是 0.64 了()

./configure --prefix=/usr/local/freetds --enable-msdblib --enable-sybase-compat   --disable-threadsafe
make
make install

freeTDS就安装完了(注意,我的PHP是通过mod_php安装的,apache2.28 编译时是 --with-mpm=prefork 编译的,Apache是进程模型的,因此不需要线程安全,所以这里废掉 threadsafe)

下面进入垃圾时间(没有一点悬念了)

cd到PHP源代码目录去安装mssql扩展
export PHP_PREFIX=/usr/local/php5
$PHP_PREFIX/bin/phpize
./configure --with-php-config=$PHP_PREFIX/bin/php-config --with-mssql=/usr/local/freetds
make
make install
PHP_MSSQL扩展就安装完了(别忘了在php.ini 中添加 extension=mssql.so)

上PECL上下载 PDO_DBLIB 扩展(凡是我装的,从来都是必定安装PDO的)
./configure --with-php-config=$PHP_PREFIX/bin/php-config --with-pdo-dblib=/usr/local/freetds
make
make install
哈哈,到此结束,全部装完了,加载之后重启Apache,在PHPINFO里就可以看到新安装的扩展了,默认的,大概如下:

上一篇:Apache重起的最好方法apachectl graceful
下一篇:让Linux开机自动激活网卡

文章评论