Невозможно установить php-mysqli на PHP7


Я установил PHP 7, mysql5. 7, Apache2. 2, CentOS6.

И я устанавливаю CodeIgniter3.0.6.

Когда я использую подключение к базе данных, ошибка произошла и сказал

A PHP Error was encountered

Severity: Core Warning

Message: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/php_mysqli.so' - /usr/lib64/php/modules/php_mysqli.so: cannot open shared object file: No such file or directory

Filename: Unknown

Line Number: 0

Конечно, в '/usr/lib64/php/modules/php_mysqli.so ' нет файлов, но я не знаю, как их установить mysqli.so.

Я пытался

yum install php-mysql

Но

Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.iij.ad.jp
 * remi-safe: mirror.awanti.com
 * updates: ftp.iij.ad.jp
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.x86_64 0:5.3.3-46.el6_7.1 will be installed
--> Processing Dependency: php-common(x86-64) = 5.3.3-46.el6_7.1 for package: php-mysql-5.3.3-46.el6_7.1.x86_64
--> Finished Dependency Resolution
Error: Package: php-mysql-5.3.3-46.el6_7.1.x86_64 (updates)
           Requires: php-common(x86-64) = 5.3.3-46.el6_7.1
           Installed: php-common-7.0.4-1.el6.remi.x86_64 (@remi-php70)
               php-common(x86-64) = 7.0.4-1.el6.remi
           Available: php-common-5.3.3-40.el6_6.x86_64 (base)
               php-common(x86-64) = 5.3.3-40.el6_6
           Available: php-common-5.3.3-46.el6_6.x86_64 (updates)
               php-common(x86-64) = 5.3.3-46.el6_6
           Available: php-common-5.3.3-46.el6_7.1.x86_64 (updates)
               php-common(x86-64) = 5.3.3-46.el6_7.1
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

И это не сработало.


Когда я выполняю команду yum install php7.0-mysql или yum install php70w-mysql,

Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.iij.ad.jp
 * remi-safe: mirror.awanti.com
 * updates: ftp.iij.ad.jp
No package php7.0-mysql available.
Error: Nothing to do

Я не знаю, что делать в все.

2 8

2 ответа:

Пожалуйста, напомните, что расширениеmysql являетсяустаревшим и больше не существует с PHP 7.

Пакетphp-mysqlnd предоставляет только расширенияmysqli иpdo_mysql .

Также доступен php-pecl-mysql, построенный из снимка git, предоставляемый для совместимости с устаревшими приложениями, но не поддерживаемый.

Из первоначального вопроса:

Установлен: php-common-7.0.4-1.el6.Реми.x86_64 (@remi-php70)

У вас установлен php 7.0.4 из remi-php70 , но репозиторий не включен. Вы должны включить его, так что yum найдет правильный пакет, соответствующий установленной версии.

Измастера настройки Инструкции:

yum install yum-utils
yum-config-manager --enable remi-php70
yum install php-mysqlnd

Обратите внимание: правильная команда для установки расширения " foo " - yum install php-foo, поэтому "yum install php-mysql" установит пакет, который предоставляет в MySQL расширение (так PHP-PECL по бинарным), "ням установить PHP-mysqli, то" будут установлены пакеты, которые предоставляет тема расширение (так PHP-с mysqlnd).

Для PHP7, на CentOS / RHEL :

yum install php70w-mysql

Если вы используете репозиторий Remi

yum install php70-php-mysqlnd

Для Ubuntu :

apt-get install php7.0-mysql