mysqli扩展无法在PHP7下升级问题的解决


Posted in PHP onSeptember 10, 2019

前言

这几天在想部署一个OAuth服务,找了一个PHP的开源实现,由于要求的PHP版本比较高,就打算在自己的ECS上(PHP7.1)先测试下,没想到遇到了一些问题。

首先发现mysqli扩展没有装(mysql扩展在PHP7中已经废弃了),原来PHP7是使用ondrej/php源安装的,可运行 apt-cache search php7 | grep mysql 居然发现没有任何的mysql扩展,包括连php-memcached扩展也没有,可实际上该扩展我已经安装了。

百思不得其解,我仔细查看了ondrej/php PPA的页面 https://launchpad.net/~ondrej/+archive/ubuntu/php,发现这个ppa包已经不支持Ubuntu14.4了(而我的机器目前正好是此版本),如下图:

mysqli扩展无法在PHP7下升级问题的解决

为了验证这一点,我在同事的Ubuntu16下装了ondrej/php包,进行测试:

$ apt-cache policy php7.3
php7.3:
 Installed: (none)
 Candidate: 7.3.7-2+ubuntu16.04.1+deb.sury.org+1
 Version table:
  7.3.7-2+ubuntu16.04.1+deb.sury.org+1 500
  500 http://ppa.launchpad.net/ondrej/php/ubuntu xenial/main i386 Packages

$ apt-cache policy php-memcached 
php-memcached:
 Installed: (none)
 Candidate: 3.1.3+2.2.0-1+ubuntu16.04.1+deb.sury.org+1
 Version table:
  3.1.3+2.2.0-1+ubuntu16.04.1+deb.sury.org+1 500
  500 http://ppa.launchpad.net/ondrej/php/ubuntu xenial/main i386 Packages
  2.2.0-51-ge573a6e+2.2.0-2build2 500
  500 http://mirrors.tencentyun.com/ubuntu xenial/universe i386 Packages

从中可以看出ondrej/php包在Ubuntu16下可以安装PHP7.3,同时也包含php-memcached扩展。

验证ondrej/php不支持Ubuntu14后,我找了一个PHP PPA包serp2002/php7-backport,在安装之前我先卸载了ondrej/php包:

$ LC_ALL=C.UTF-8 add-apt-repository --remove ppa:ondrej/php

然后:

$ apt-cache show php7.3-mysql  
Package: php7.3-mysql
Source: php7.3
Priority: optional
Section: php
Installed-Size: 403
Maintainer: Debian PHP Maintainers <team+pkg-php@tracker.debian.org>
Architecture: i386
Version: 7.3.7-2+ubuntu16.04.1+deb.sury.org+1
Provides: php-mysqli, php-mysqlnd, php-pdo-mysql, php7.3-mysqli, php7.3-mysqlnd, php7.3-pdo-mysql

可见 php7.3-mysql 这个包实际上包含了很多mysql相关的包,比如 mysqli或pdo,如果你单独安装其中一个:

$ apt-get install php7.3-mysqli
N: Can't select versions from package 'php7.3-mysqli' as it is purely virtual
N: No packages found

会提示你php7.3-mysqli是一个虚拟的包。最终顺利安装完成。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
php 常用字符串函数总结
Mar 15 PHP
php实现的简单压缩英文字符串的代码
Apr 24 PHP
如何批量替换相对地址为绝对地址(利用bat批处理实现)
May 27 PHP
解决File size limit exceeded 错误的方法
Jun 14 PHP
PHP中获取时间的下一周下个月的方法
Mar 18 PHP
php环境无法上传文件的解决方法
Apr 30 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十五)
Jun 30 PHP
学习php设计模式 php实现备忘录模式(Memento)
Dec 09 PHP
php生成图片验证码的方法
Apr 15 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 PHP
asp函数split()对应php函数explode()
Feb 27 PHP
php使用gearman进行任务分发操作实例详解
Feb 26 PHP
PHP 模拟登陆功能实例详解
Sep 10 #PHP
Yii框架日志操作图文与实例详解
Sep 09 #PHP
php求斐波那契数的两种实现方式【递归与递推】
Sep 09 #PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
Sep 09 #PHP
Yii框架常见缓存应用实例小结
Sep 09 #PHP
Yii框架函数简单用法分析
Sep 09 #PHP
Yii框架的路由配置方法分析
Sep 09 #PHP
You might like
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
PHP swoole和redis异步任务实现方法分析
2019/08/12 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
推荐17个优美新鲜的jQuery的工具提示插件
2012/09/14 Javascript
使用apply方法处理数组的三个技巧[译]
2012/09/20 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
jquery.post用法关于type设置问题补充
2014/01/03 Javascript
JQuery性能优化的几点建议
2014/05/14 Javascript
html文档中的location对象属性理解及常见的用法
2014/08/13 Javascript
gridview生成时如何去掉style属性中的border-collapse
2014/09/30 Javascript
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
轻松创建nodejs服务器(10):处理POST请求
2014/12/18 NodeJs
js实现滚动条滚动到页面底部继续加载
2015/12/19 Javascript
分享两款带遮罩的jQuery弹出框
2015/12/30 Javascript
学习使用bootstrap3栅格系统
2016/04/12 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
2016/09/08 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
vue.js指令v-model使用方法
2017/03/20 Javascript
最通俗易懂的javascript变量提升详解
2017/08/05 Javascript
浅谈webpack devtool里的7种SourceMap模式
2019/01/14 Javascript
监控Nodejs的性能实例代码
2019/07/02 NodeJs
Layui实现主窗口和Iframe层参数传递
2019/11/14 Javascript
mpvue微信小程序开发之实现一个弹幕评论
2019/11/24 Javascript
解决vue项目获取dom元素宽高总是不准确问题
2020/07/29 Javascript
[04:10]2018年度CS GO玩家最喜爱的主播-完美盛典
2018/12/16 DOTA
使用python实现生成用户信息
2017/03/20 Python
Python基础之循环语句用法示例【for、while循环】
2019/03/23 Python
Python 实现的 Google 批量翻译功能
2019/08/26 Python
解决pip install psycopg2出错问题
2020/07/09 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
移动端HTML5开发神器之vconsole详解
2020/12/15 HTML / CSS
伦敦平价潮流珠宝首饰品牌:Astrid & Miyu
2016/10/10 全球购物
国际领先的在线时尚服装和配饰店:DressLily
2019/03/03 全球购物
主题党日活动总结
2014/07/08 职场文书
离职感谢信
2015/01/21 职场文书
质量保证书格式
2015/02/27 职场文书