Обновление php mongo на Yum

Я пытаюсь выполнить обновление с PHP 5.6 до PHP 7 на своей машине Vagrant. Я более или менее следую этому руководству https://blog.remirepo.net/post/2017/12/04/Install-PHP-7.2-on-CentOS-RHEL-or-Fedora

Я сделал следующее:

wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch. об / мин

Я выполняю обычные шаги для активации пакетов, но затем, когда я пытаюсь выполнить обновление через

yum update

Я получаю следующую ошибку:

php-pecl-mongo-1.6.16-1.el7.remi.5.6.x86_64 (@remi-php56)  
Requires: php(api) = 20131106-64   
Removing: php-common-5.6.36-1.el7.remi.x86_64 (@remi-php56)

Ошибка на самом деле больше. Но вкратце это означает, что мне нужен драйвер Mongo для PHP 7.

Как я могу это обновить? Я в растерянности!


person mrateb    schedule 17.07.2018    source источник


Ответы (1)


  • Расширение mongo предназначено только для PHP 5.
  • Расширение mongodb предназначено для PHP 5.5+ и PHP 7+.

Таким образом, yum блокирует транзакцию (ожидаемую), поскольку одно из установленных расширений несовместимо с PHP 7.

Перед обновлением необходимо удалить это расширение.

Имейте в виду, что mongodb и mongo - это действительно разные расширения с очень разными API.

Обычно люди используют библиотеку mongodb / mongodb для получения высокоуровневого API.

Вы также можете рассмотреть возможность использования библиотеки alcaeus / mongo-php-adapter, которая предоставляет старый API mongo с использованием расширения mongodb.

person Remi Collet    schedule 17.07.2018
comment
Большое спасибо, это действительно полезно - person mrateb; 17.07.2018