我的 VPS 安装了 PHP 5.4.16-43.el7_4.1,我正在尝试安装 PHP 7+,但无法这样做。
然后,当我尝试安装一个库时,它会发生冲突,如下所示:
# yum -y install php-mysql
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: repos-va.psychz.net
* epel: mirror.us-midwest-1.nexcess.net
* extras: mirrors.greenmountainaccess.net
* ius: archive.linux.duke.edu
* updates: mirror.vcu.edu
* webtatic: us-east.repo.webtatic.com
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.x86_64 0:5.4.16-43.el7_4.1 will be installed
--> Processing Dependency: php-pdo(x86-64) = 5.4.16-43.el7_4.1 for package: php-mysql-5.4.16-43.el7_4.1.x86_64
--> Running transaction check
---> Package php-pdo.x86_64 0:5.4.16-43.el7_4.1 will be installed
--> Processing Dependency: php-common(x86-64) = 5.4.16-43.el7_4.1 for package: php-pdo-5.4.16-43.el7_4.1.x86_64
--> Running transaction check
---> Package php-common.x86_64 0:5.4.16-43.el7_4.1 will be installed
--> Processing Conflict: php70w-common-7.0.27-1.w7.x86_64 conflicts php-common < 7.0
--> Finished Dependency Resolution
Error: php70w-common conflicts with php-common-5.4.16-43.el7_4.1.x86_64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
我怎样才能彻底删除这个旧版本的 PHP?
答案1
看来您想安装较新版本的 PHP-MySQL 模块。您需要注意,该mysql_
库几年前就已弃用,并且已在 PHP 7 中完全删除。请使用现代替代品,例如PDO
或mysqli_
。请参阅这个答案
如果您使用的是 CentOS 7,我建议您使用 IUS 存储库而不是 webtatic。因此,您可以禁用或删除 webtatic 存储库。我还建议您删除从中安装的软件包。例如:
yum -y remove php70w*
现在禁用或删除 webtatic repo 后安装 php7。
对于 php7.1*
yum -y install php71*
对于 php7.2*
yum -y install php72*
尝试看看 MySQL 是否受支持:
yum list installed | grep -i mysql
php71u-mysqlnd.*
例如,如果你看到,它已经得到支持。