php 编译安装pdo_mysql_php 编译安装pdo_mysql

1.从pecl.php.net 下载pdo_mysql扩展包;

如果有php源码包可以不用下载,在 源码包下的 ext/ 下面可以找到;

2.解压,进入扩展包目录,执行 /usr/local/bin/phpize (路径根据实际情况,主要是找phpize,如果没有phpize 则可能需要安装 php-dev)

# tar -zxvf PDO_MYSQL-1.0.2.tgz

# /usr/local/bin/phpize

Configuring for:

PHP Api Version: 20160303

Zend Module Api No: 20160303

3. configure

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

这里使用mysqlnd 而不是 /usr/local/mysql,PHP7 正式移除了 mysql 扩展;如果有多个版本的 PHP,使用-with-php-config=/usr/local/bin/php-config 指向对应版本的php-config 可以将扩展安装到对应的 PHP 版本;

4. make ,make install

5. 然后就是修改php.ini

找到; extension=php_pdo_mysql.dll这一行,去掉注释,并修改后面的文件名:

extension=pdo_mysql.so

重启 php-fpm ,ok!

————————————————————————————————————

记录一个问题:

环境:docker ,Debian GNU/Linux 8

PHP:7.1.10

用下载的 pdo_mysql 包安装 configure 时报:can not find mysql under the "mysqlnd" that you specified,但是检查 PHP 扩展mysqlnd 是安装了的,

然后 -with-pdo-mysql=/usr/local/include/php/ext/mysqlnd 也不行;

但是用 PHP 源码包里的 pdo_mysql 安装就没问题;

比对了 源码包下的mysqlnd 和 /usr/local/include/php/ext/mysqlnd 中的文件确实不一样;

有时间了要把这个搞清楚

————————————————————

上面的问题解决了:安装 mysql 开发工具包就可以了

apt-get install libmysqlclient-dev

但是又会出现新的问题。。。

终极解决方案:

下载对应版本的 PHP 源码包,用源码包安装 非常流畅。。。

http://php.net/downloads.php

http://php.net/releases/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值