PHP 数据对象PDO扩展为PHP访问数据库定义了一个轻量级的一致接口。PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。最近在我们的建站和OA系统交流群中,有对服务器运维不熟悉的朋友问到关于PHP的PDO扩展安装的问题。本文我们将和大家一起分享如何在服务器上安装PDO扩展。
Linux系统篇
1.CentOS系统
环境:
服务器系统:Centos6.5 (虚拟机演示)
PHP软件包存放目录:/data/php-5.6.14/
PHP安装目录:/usr/local/php/
mysql安装目录:/usr/local/mysql/
操作流程:
通过phpinfo()函数我们可以检查服务器是否安装了PDO扩展。如果没有找到PDO扩展信息,那我们通过如下步骤来进行安装:
找到你的PHP的安装包(我的放在/data/php-5.6.14/目录下),并进入PHP扩展的pdo_mysql目录,运行下面命令:
/usr/local/php/bin/phpize
(/usr/local/php/是我的PHP安装目录,大家根据实际情况修改即可)
执行完上面命令后,我们就会发现当前pdo_msyql目录下就出现了configure文件。
然之我们执行下面命令:
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql/
参数说明:
--with-php-config=/usr/local/php/bin/php-config 指定安装 PHP 的时候的配置
--with-pdo-MySQL=/usr/local/mysql/ 指定 MySQL 数据库的安装目录位置
(这里具体PHP和msyql的安装目录大家根据自己实际情况而定)
继续编译安装:
make && make install
命令执行完毕,效果如下:
足以最后一行的那个目录,后面会用到,此时生成的pdo_mysql.so文件就在该目录下:
接下来我们修改PHP配置文件,打开的你的php.ini文件,并添加一行代码:
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/pdo_mysql.so
(这里是我演示的pdo_mysql.so目录,大家设置时根据自己的实际目录添加)
最后保存推出,并重启服务。然后使用phpinfo()函数检查一下PDO扩展安装是否成功,结果如下,说明PDO扩展安装成功。
2.Ubuntu系统
如果没有安装php和mysql的开发包,在开始之前需要先安装
sudo apt-get install php5-dev sudo apt-get install php5-pear sudo apt-get install libmysqlclient15-dev
pdo在ubuntu的apt里头似乎还找不到安装源,所以通过pecl来安装这个扩展,非常简单
sudo pecl install pdo
PHP配置文件增加一行:
extension=pdo.so
安装pdo_mysql
sudo pecl install pdo_mysql sudo apt-get install php5-mysql
PHP配置文件增加一行:
extension = pdo_mysql.so
最后重启服务。
Windows系统篇
修改php.ini文件,将下面的代码前面去掉分号,
extension_dir="" //这里配置为你自己的ext目录路径 extension=php_mysql.dll extension=php_pdo.dll extension=php_pdo_mysql.dll
然之把php安装目录的路径加入到系统环境变量PATH中。
最后重启服务。
小结
本文我们和大家一起分享了如何在linux系统(centos、ubuntu)及windows系统中,安装PHP的PDO扩展,如果大家在实际操作中有什么问题,欢迎一起交流讨论,我们共同学习,共同进步。