关于linux下部署项目时遇到MYSQL_ATTR_INIT_COMMAND未定义时解决办法

最近学习linux,使用php5.6+marridb+apache部署项目时最终的时候遇到MYSQL_ATTR_INIT_COMMAND未定义报错,百度后发现是php扩展未添加

1.进入PHP源码包ext/pdo目录
cd ext/pdo
2.执行/usr/local/php/bin/phpize[假设PHP的安装目录为/usr/local/php]
 /usr/local/php/bin/phpize
3.配置扩展pdo
./configure --with-php-config=/usr/local/php/bin/php-config --enable-pdo=shared
4.编译安装pdo
make && make install
成功则出现
Installing shared extensions:     /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
Installing header files:          /usr/local/php//include/php/
Installing PDO headers:          /usr/local/php//include/php/ext/pdo/
说明在/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo.so文件
6.在php配置文件中加上
extension=”/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo.so”
7.在PHP源码包中进入pdo_mysql
cd ext/pdo_mysql
8.执行/usr/local/php/bin/phpize
9.配置pdo_mysql[假设Mysql的安装目录为/usr/local/mysql]
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
10.编译pdo_mysql 安装pdo_mysql
 make && make install
成功则出现
Installing shared extensions:     /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
说明的/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo_mysql.so文件
12.在php配置文件中加上
extension=”/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so”
重启php和(nginx或Apache)即可!

但是通过查看phpinfo,还是失败

通过strace命令跟踪服务
strace /usr/local/php7/sbin/php-fpm -i 2>1.log跟踪服务启动项

发现我的php-fpm是在/etc/php/php.ini里启动它,而我之前一直在/usr/local/php/etc/php.ini里修改,所以无效,复制过去就解决了问题


本文转自 水滴的历程 51CTO博客,原文链接:http://blog.51cto.com/12390959/2048349


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值