运行ThinkPHP项目报错:Class'PDO'notfound
一、Web环境
CentOS release 5.8 x86_64
nginx-1.8.1
php-5.6.32
mysql-5.1.56
ThinkPHP 错误:Class 'PDO' not found ,原因 mysql 缺少pdo驱动,需要安装php的pdo和pdo_mysql扩展。
1、安装 php 的 pdo 扩展
进入PHP源码包 ext/pdo 目录
[root@uczh ~]# cd /soft/php/php-5.6.32/ext/pdo
执行 /local/server/php5.6/bin/phpize
php-5.6.32 的安装目录为:/local/server/php5.6
[root@uczh pdo]# /local/server/php5.6/bin/phpize --with-php-config=/local/server/php5.6/bin/php-config
Configuring for:
PHP Api Version: 20131106
Zend Module Api No: 20131226
Zend Extension Api No: 220131226
配置扩展 pdo
[root@uczh pdo]# ./configure --with-php-config=/local/server/php5.6/bin/php-config --enable-pdo=shared
编译安装 pdo
[root@uczh pdo]# make
[root@uczh pdo]# make install
Installing shared extensions: /local/server/php5.6/lib/php/extensions/no-debug-non-zts-20131226/
Installing header files: /local/server/php5.6/include/php/
Installing PDO headers: /local/server/php5.6/include/php/ext/pdo/
以上安装输出,说明在 /local/server/php5.6/lib/php/extensions/no-debug-non-zts-20131226/ 目录下生成了 pdo.so 文件
在 php 配置文件上加上
extension="/local/server/php5.6/lib/php/extensions/no-debug-non-zts-20131226/pdo.so"
2、安装 php 的 pdo_mysql 扩展
在 PHP 源码包目录下进入 pdo_mysql
[root@uczh pdo_mysql]# cd /soft/php/php-5.6.32/ext/pdo_mysql
执行 /local/server/php5.6/bin/phpize
php-5.6.32 的安装目录为:/local/server/php5.6
[root@uczh pdo_mysql]# /local/server/php5.6/bin/phpize --with-php-config=/local/server/php5.6/bin/php-config
Configuring for:
PHP Api Version: 20131106
Zend Module Api No: 20131226
Zend Extension Api No: 220131226
配置扩展 pdo_mysql
[root@uczh pdo_mysql]# ./configure --with-php-config=/local/server/php5.6/bin/php-config --with-pdo-mysql=/local/server/mysql
编译安装 pdo_mysql
[root@uczh pdo_mysql]# make
[root@uczh pdo_mysql]# make install
Installing shared extensions: /local/server/php5.6/lib/php/extensions/no-debug-non-zts-20131226/
以上安装输出,说明在 /local/server/php5.6/lib/php/extensions/no-debug-non-zts-20131226/ 目录下生成了 pdo_mysql.so 文件
在 php 配置文件上加上
extension="/local/server/php5.6/lib/php/extensions/no-debug-non-zts-20131226/pdo_mysql.so"
最后重启 php-fpm 服务。
kill -USR2 `cat /local/server/php5.6/var/run/php-fpm.pid`
查看刚安装的扩展是否存在:
[root@uczh pdo_mysql]# /local/server/php5.6/bin/php -m|grep "[P|p][D|d][O|o]"
PDO
pdo_mysql
以上是 运行ThinkPHP项目报错:Class'PDO'notfound 的全部内容, 来源链接: utcz.com/z/508628.html