PHP中PDO_MYSQL扩展安装的2种方法
来源: 阅读:5297 次 日期:2014-12-15 17:25:36
温馨提示: 小编为您整理了“PHP中PDO_MYSQL扩展安装的2种方法”,方便广大网友查阅!

方法一

看到CakePHP文档要求安装pdo_mysql扩展,于是就尝试安装了一下。

这里我的系统是CentOS 6.0。如果你的系统是其他版本的Linux/Unix,可以参考。如果你的系统是Windows的,抱歉,以下内容不适合你,请移步。

首先是下载pdo_mysql扩展的源码包。下载页面在这里:。可以先下载了然后用FTP传到服务器。

我是在复制了下载地址以后使用wget直接下载到服务器端的。

# wget

然后是解压缩。

# tar -zxvf PDO_MYSQL-1.0.2.tgz

进入解压后的目录,然后执行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/mysql

在make之前还要做一个mysql的header文件的软连接。因为mysql安装的时候指定了目录,不做软连接的话,还是找不到header文件。

# ln -s /usr/local/mysql/include/* /usr/local/include/

然后make和make install。

# make

# make install

之后会提示如下,意思是扩展被安装到了如下目录里。

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/

为了方便,我把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()查看发现已经生效了。

方法二

PDO_MYSQL以下操作都在Linux 系统下操作

1、下载 文件 或者 进入 在PHP源码包中进入ext/pdo_mysql

2、解压文件

tar zxvf PDO_MYSQL-1.0.2.tgz

3、配置和编译文件

cd PDO_MYSQL-1.0.2

/usr/local/php/bin/phpize

./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysql

make

make install

注: 我的PHP安装在 : /usr/local/php/ mysql 安装在 : /usr/local/mysql 编译的时候注意你自己的安装目录在哪里

3、安装到PHP配置下

把这个记住,然后打开 php.ini文件,

并添加一行

extension=pdo_mysql.so

windows PDO MYSQL扩展安装

php.ini中没有开启pdo,故修改php.ini,将形如下面的代码前面去掉分号,修改后如下:

extension_dir="E:/amp/php/ext" //这里配置为你自己的ext目录路径

......

extension=php_mysql.dll

......

extension=php_pdo.dll

......

extension=php_pdo_mysql.dll

重启apache后访问又继续报以下错误:

CDbConnection 无法开启数据库连线: could not find driver

意思是无法找到数据库驱动,我又用phpinfo看了一下,PDO确实是开启了,但是PDO那一项中支持的数据库显示no value,说明无法加载php_pdo_mysql.dll这个扩展。经过多次尝试,包括更换php的版本,更换mysql的版本。但是均不奏效。难道真的无法开启php的mysql pdo扩展了吗?

在网上查了又查,终于找到解决方案

方法一:需要把php安装目录的路径加入到系统环境变量PATH中,这样就可以解决问题。

方法二:因为我是在服务器上部署的,正在运行着的服务器,所以无法重启,故也可将php安装目录下的libmysql.dll复制到windows目录下

重启apache

更多信息请查看IT技术专栏

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map