php7用什么替代mysql(mysqli扩展无法在PHP7下升级问题的解决)
php7用什么替代mysql
mysqli扩展无法在PHP7下升级问题的解决前言
这几天在想部署一个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了(而我的机器目前正好是此版本),如下图:
为了验证这一点,我在同事的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是一个虚拟的包。最终顺利安装完成。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对开心学习网的支持。
原文链接:https://mp.weixin.qq.com/s?__biz=MzAwOTU4NzM5Ng==&mid=2455770949&idx=1&sn=0e4ec590d2d2120cec16e6a66b9d13c6
- php如何继承多个类(PHP面向对象程序设计子类扩展父类子类重新载入父类操作详解)
- cubeide调试问题(如何使用宝塔安装ionCube扩展)
- redis在php怎么使用(Windows服务器中PHP如何安装redis扩展)
- vue3中的setup的参数(Vue3中ref与reactive的详解与扩展)
- 解忧大队es6扩展运算符(ES6扩展运算符的使用方法示例)
- django用户权限管理(Django 内置权限扩展案例详解)
- django修改端口(django2.0扩展用户字段示例)
- 2021-10-07 00:38:09
- python flask部署实例(Python Flask框架扩展操作示例)
- python控制流实例(如何用C代码给Python写扩展库Cython)
- css基础选择器的语法格式(css -webkit-line-clamp WebKit的CSS扩展WebKit是私有属性)
- 宝塔面板windows新手教程(宝塔面板CPU负载过高使用opcache扩展的解决方法)
- php扩展库使用教程(php使用pecl方式安装扩展操作示例)
- zabbix 数据库优化(快速通过zabbix获取数据库连接的信息及部分扩展)
- SQLServer中使用扩展事件获取Session级别的等待信息及SQLServer 2016中Session级别等待(SQLServer中使用扩展事件获取Session级别的等待信息及SQLServer 2016中Session级别等待)
- phpredis高级用法(PHP Redis扩展无法加载的问题解决方法)
- 新手的勾线(新手的勾线)
- ()
- 书法欣赏 宋.志南诗《绝句》(宋.志南诗绝句)
- 每周一首古诗 《绝句》(每周一首古诗绝句)
- 蓝色代表什么(蓝色代表什么性格的人)
- 红色代表什么(红色代表什么情感和含义)
热门推荐
- python语言翻译中文(浅析Python 实现一个自动化翻译和替换的工具)
- docker容器使用流程(在Docker构建的容器中实现安装ping工具)
- js中this的用法
- mysql 自定义排序
- javascript页面滚动窗口(javascript实现简单滚动窗口)
- laravel时间日期字段比较(Laravel find in set排序实例)
- win7如何搭建serv-u服务器(使用Serv-U搭建FTP服务器以及bestsync自动同步设置图文教程)
- php教程字符串类型进阶技术教程(PHP中有关长整数的一些操作教程)
- vue子视图里再加routerview(vue router-view的嵌套显示实现)
- phpredis常用方法(PHP针对redis常用操作实例详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9