看到CakePHP文档要求安装pdo_mysql扩展,因而就尝试安装了一下。php
这里个人系统是CentOS 6.0。若是你的系统是其余版本的Linux/Unix,能够参考。若是你的系统是Windows的,抱歉,如下内容不适合你,请移步。mysql
首先是下载pdo_mysql扩展的源码包。下载页面在这里:http://pecl.php.net/package/PDO_MYSQL。能够先下载了而后用FTP传到服务器。sql
我是在复制了下载地址之后使用wget直接下载到服务器端的。
# wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgzapache
而后是解压缩。
# tar -zxvf PDO_MYSQL-1.0.2.tgzwindows
进入解压后的目录,而后执行phpize。
# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525服务器
下面生成makefile。后面的两个参数必需要添加,一开始我没有添加,结果分别都提示找不到php-config和mysql的header文件。
# ./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysqlide
在make以前还要作一个mysql的header文件的软链接。由于mysql安装的时候指定了目录,不作软链接的话,仍是找不到header文件。
# ln -s /usr/local/mysql/include/* /usr/local/include/测试
而后make和make install。
# make
# make installspa
以后会提示以下,意思是扩展被安装到了以下目录里。
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/.net
为了方便,我把pdo_mysql.so文件移动到extensions目录下。
# mv /usr/local/php/lib/php/extensions/no-debug-zts-20100525/pdo_mysql.so /usr/local/php/lib/php/extensions/
随后就能够修改php.ini文件了。
找到; extension_dir = “./”这一行,去掉注释,并修改路径。
extension_dir = “/usr/local/php/lib/php/extensions/”
这里通过我测试,发现php只会从该目录寻找扩展so,而并不寻找该目录下的子目录。因此以前我为了统一管理,把so文件都移动到该目录下。
找到; extension=php_pdo_mysql.dll这一行,去掉注释,并修改后面的文件名。
extension=pdo_mysql.so
文件名不太同样,这里要把php_前缀去掉,不然找不到文件。后面的dll是windows下的文件名,咱们改为so。
最后重启apache就能够了。用phpinfo()查看发现已经生效了。