Linux下PHP扩展pdo_mysql
PHP扩展的安装方式通常分为两种:
1. 随同PHP编译
2. 生成单独的.so文件
PHP编译安装之后可能需求扩展一些组件比如pdo_mysql,gd什么的,好在php5中有一个phpize工具可以帮助我们轻松的扩展PHP而不需要重新编译PHP,笔者在扩展pdo_mysql却遇了一些问题,特与大家分享:
情况描述:
phpinfo()显示
pdo support enabled
pdo drivers sqlite2, sqlite
没有支持mysql
最初按时下面的方法来扩展【注意下面这个方法没有成功 】:
在php的原码安装包里,进入到etc/pdo_mysql里。假设你的php是安装在/www/bin/php里的。执行/www/bin/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config
经过configure就可以make了
make
make install
注意pdo_mysql的全路径,我的是:
/usr/local/php/lib/php/extensions/debug-non-zts-20060613/pdo_mysql.so
然后在/usr/local/lib/php.ini
加上一句:
extension=/usr/local/php/lib/php/extensions/debug-non-zts-20060613/pdo_mysql.so
重新启动apache即可看到已经加载pdo_mysql成功。
最终笔者想了许久才顿时想到,可能是由于pdo没有安装好,于是按照下面的方法【注意下面这个方法扩展成功 】:
Linux下PHP扩展pdo_mysql
1.进入PHP源码包ext/pdo目录
cd ext/pdo
2.执行/usr/local/php/bin/phpize[假设PHP的安装目录为/usr/local/php]
/usr/local/php/bin/phpize
3.配置扩展pdo
./configure \
--with-php-config=/usr/local/php/bin/php-config \
--enable-pdo=shared
4.编译pdo
make
5.安装
make install
[root@localhost pdo]# make install
成功则出现
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
Installing header files: /usr/local/php//include/php/
Installing PDO headers: /usr/local/php//include/php/ext/pdo/
说明在/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo.so文件
6.在php配置文件中加上
extension=”/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo.so”
7.在PHP源码包中进入pdo_mysql
cd ext/pdo_mysql
8.执行/usr/local/php/bin/phpize
/usr/local/php/bin/phpize
9.配置pdo_mysql[假设Mysql的安装目录为/usr/local/mysql]
./configure \
--with-php-config=/usr/local/php/bin/php-config \
--with-pdo-mysql=/usr/local/mysql
10.编译pdo_mysql
make
11.安装pdo_mysql
make install
成功则出现
[root@localhost pdo_mysql]# make install
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
说明的/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo_mysql.so文件
12.在php配置文件中加上
extension=”/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so”
13.重启apache[假设apache的安装目录为/usr/local/apache2]
/usr/local/apache2/bin/apachectl restart
14.扩展成功,尽情享受pdo的强大功能吧!