php внезапно выдал ошибку «Расширение mysqli отсутствует. Проверьте конфигурацию PHP. Для получения дополнительной информации см. нашу документацию». - PullRequest
0 голосов
/ 12 ноября 2018

Я настраивал сайт и все работало нормально, вдруг мой php выдал ошибку

The mysqli extension is missing. Please check your PHP configuration. See our documentation for more information.

Когда я набираю php --version я получаю ответ:

PHP Warning:  PHP Startup: Unable to load dynamic library 'mysqli.so' (tried: /usr/lib/php/20170718/mysqli.so (/usr/lib/php/20170718/mysqli.so: cannot open shared object file: No such file or directory), /usr/lib/php/20170718/mysqli.so.so (/usr/lib/php/20170718/mysqli.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

и для mysql --version ответ:

mysql  Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using  EditLine wrapper

Моя версия Ubuntu - 18.04. Что может пойти не так? Пожалуйста помоги. Я не делал ни обновления, ни установки

и мои расширения в php.ini -

;extension=bz2
;extension=curl
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=interbase
;extension=ldap
;extension=mbstring
;extension=exif      ; Must be after mbstring as it depends on it
;extension=mysqli.so
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=shmop

; The MIBS data available in the PHP distribution must be installed.
; See http://www.php.net/manual/en/snmp.installation.php
;extension=snmp

;extension=soap
;extension=sockets
;extension=sqlite3
;extension=tidy
;extension=xmlrpc
;extension=xsl

Ответы [ 3 ]

0 голосов
/ 12 ноября 2018

вам просто нужно раскомментировать следующую строку ; extension = mysqli.so в php.ini

Чтобы раскомментировать эту строку, просто удалите начальную (;) из строки. сохранить INI-файл и перезагрузить сервер. это должно работать

0 голосов
/ 12 ноября 2018

Ошибка очень очевидна. В вашей системе не настроено mysqli . Вы должны убедиться, что расширение установлено и правильно включено.

Чтобы установить mysqli, если он отсутствует

sudo apt-get install php-mysql

Для Ubuntu, кажется, я помню, что вам не рекомендуется редактировать php.ini напрямую, но вместо этого используйте phpenmod для включения модулей.

Пример

phpenmod mysqli

Чтобы проверить настройки mysqli в PHP, вы можете запустить что-то вроде

php -r 'phpinfo ();' | grep -i mysqli

0 голосов
/ 12 ноября 2018

Установите один из пакетов, содержащих ваш пакет. Выберите самую последнюю версию:

Кроме того, при установке пакета убедитесь, что ваши библиотеки обновляются с помощью следующих команд:

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install php7.2-mysql

вот несколько примеров для пакетов php

apt-get install php-pear php7.2-curl php7.2-dev php7.2-gd php7.2-mbstring php7.2-zip php7.2-mysql php7.2-xml
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...