Wamp не может загрузить расширение MySQL - PullRequest
14 голосов
/ 13 февраля 2009

WAMP установлен нормально, без проблем, НО ...

При переходе к phpMyAdmin я получаю сообщение об ошибке от phpMyAdmin следующим образом:

Cannot load mysqli extension. Please check your PHP configuration

Кроме того, документация phpMyAdmin объясняет это сообщение об ошибке следующим образом:

Чтобы подключиться к серверу MySQL, PHP необходим набор функций MySQL называется "расширение MySQL". Это расширение может быть частью PHP дистрибутив (скомпилированный), иначе его нужно загрузить динамически. Его имя, вероятно, mysql.so или php_mysql.dll. phpMyAdmin попытался загрузить расширение, но не смог. Обычно Проблема решается установкой программного пакета под названием «PHP-MySQL» или что-то подобное.

Наконец, файл apache_error.log содержит следующие предупреждения PHP (см. Предупреждение mySQL):

PHP Warning: Zend Optimizer does not support this version of PHP - please upgrade to the latest version of Zend Optimizer in Unknown on line 0
PHP Warning: Zend Platform does not support this version of PHP - please upgrade to the latest version of Zend Platform in Unknown on line 0
PHP Warning: Zend Debug Server does not support this version of PHP - please upgrade to the latest version of Zend Debug Server in Unknown on line 0
PHP Warning: gd wrapper does not support this version of PHP - please upgrade to the latest version of gd wrapper in Unknown on line 0
PHP Warning: java wrapper does not support this version of PHP - please upgrade to the latest version of java wrapper in Unknown on line 0
PHP Warning: mysql wrapper does not support this version of PHP - please upgrade to the latest version of mysql wrapper in Unknown on line 0

Итак, по какой-то причине PHP не распознает расширение mysql.

Кто-нибудь знает почему? Любое решение или обходной путь?

Ответы [ 17 ]

19 голосов
/ 17 октября 2009

Я удалил PHP в программных файлах и все стало работать, проблема в том, что там две установки pHp

6 голосов
/ 26 января 2012

Я перепробовал много решений, но ни одно из них не помогло мне. Я пробовал следующие решения:

  • Перезагрузите сервер вампиров
  • Переустановите wampserver
  • перезагрузить машину
  • и все другие решения, упомянутые в этом вопросе.

Однако ни один из них не сработал. Затем я обнаружил, что мой PHPMyAdmin не работает в Chrome и работает в Firefox. Поэтому я попытался очистить кеш, перезапустить браузер и т. Д., Но все равно это не сработало.

Затем я удалил все файлы из C:\wamp\tmp, а затем повторил попытку, и это работает. Я не уверен, почему это работает, но вот что я думаю. Сессия была кэширована и не очищалась. Поэтому, как только я удалил все файлы в этом каталоге, все сеансы были удалены, и, следовательно, все работало нормально.

5 голосов
/ 15 июля 2009

Сначала убедитесь, что файл php.ini загружает расширение mysqli.
Если вы используете WAMPServer, щелкните значок на панели задач, перейдите к PHP -> PHP Extensions и убедитесь, что он отмечен. Если нет, перейдите в файл php.ini и убедитесь, что строка: extension=php_mysqli.dll не закомментирована (например, удалите ;, если он существует). Если эта строка не существует, добавьте ее.

Если это по-прежнему не работает, дважды проверьте, что загружается правильный файл php.ini.
Для этого просмотрите ваш phpinfo () ( Здесь для WAMPServer). Прокрутите вниз до строки Loaded Configuration File и посмотрите, какая php.ini загружается. Make sure it is the right file. If you're using WAMPServer, it should be (ПАРА УСТАНОВКИ WAMP) \ bin \ apache \ Apache2.2.11 \ bin \ php.ini . By default, it is C: \ wamp \ bin \ Apache \ Apache2.2.11 \ Bin \ php.ini`.

Если загружается другой файл php.ini, просто переименуйте его в другое, чтобы PHP попытался найти файл где-нибудь еще. Должен быть способ указать, какой из них вы хотите использовать, но я точно забыл, как это сделать ...

Если это по-прежнему не работает ... Попробуйте поиграться с настройками phpMyAdmin или воспользуйтесь другим ответом, но, боюсь, я не могу помочь после этого.

1 голос
/ 22 декабря 2009

в wampserver перейдите на php.ini. откройте файл и раскомментируйте расширение = msql.dll, удалив точку с запятой (;) для соответствующей операционной системы.

1 голос
/ 13 мая 2010

Также установите пароль для mysql:

SET PASSWORD FOR root@localhost=PASSWORD('your_password');

И пароль phpmyadmin mysql в config.inc.php:

$cfg['Servers'][$i]['password'] = 'your_password';
1 голос
/ 15 июля 2009

У меня была такая же проблема. У меня был установлен сервер WAMP. Все работало нормально. Затем однажды я перезагрузил свой компьютер, и он просто перестал работать! Я пытался отчаянно проходить все справочные посты и делать их, но ничего не получалось.

Обычно они советуют вам сначала перейти к файлу php.ini и убедиться, что ваш extension_dir установлен правильно. Затем, чтобы убедиться, что эти две строки не закомментированы (удалите; infront): расширение = php_mysql.dll расширение = php_mysqli.dll

Тогда некоторые предложили мне загрузить свежие копии этих двух файлов, но ни один не работал. Я также попытался удалить все (php / mysql / apache) и переустановил свежие копии сервера WAMP несколько раз, но безуспешно.

Наконец мне удалось найти альтернативное решение. Я переключился на 'easyphp' (http://www.easyphp.org/). Это что-то очень похожее на WAMP. Сначала я сделал резервные копии своих баз данных sql, чтобы я мог перезагрузить их при новой установке.

Затем я установил 'easyphp', и все, кажется, работает нормально. Я перезагрузил базы данных sql из моей резервной копии, и теперь все возвращается к нормальной жизни.

Я надеюсь, что кто-то страдает от подобной проблемы. найдет это полезным. Если кто-то действительно нашел решение, чтобы заставить работать сервер WAMP. Пожалуйста, будьте любезны опубликовать это здесь, так что многие выиграют.

1 голос
/ 18 марта 2014

Я использовал WAMP с двумя версиями PHP 1) 5.2.9 и 2) 5.2.13.

В соответствии с требованиями сайта мне нужно было изменить версию PHP на 5.2.9 с 5.2.13. после замены версии PHP возникла ошибка «отсутствует расширение mysqli». после долгой отладки я узнал, что это произошло из-за неправильного пути "extension_dir" в файле php.ini.

Итак, я изменил его значение:

Старый: "extension_dir" c: /wamp/bin/php/php5.2.13/ext/

Новое: "extension_dir" c: /wamp/bin/php/php5.2.9/ext/

Перезапущены все службы на wamp-сервере, затем исправлено.

1 голос
/ 10 июня 2011

Просто добавьте в свой php.ini:

[PHP_MCRYPT]
extension=php_mcrypt.dll
[PHP_MYSQL]
extension=php_mysql.dll
[PHP_MYSQLI]
extension=php_mysqli.dll
0 голосов
/ 04 октября 2018

У меня была переменная пути в Windows, установленная на случайную версию php.

Исправление было в том, чтобы обновить его и установить в папку в моей установке wampserver:

C:\wamp64\bin\php\php5.6.38

Тогда я понял, что это неправильно и для моего конкретного случая, и я должен запустить скрипт изнутри vagrant. Живи и учись.

0 голосов
/ 13 июня 2013

Я очень старался установка вампа снова и снова, проверив файл php.ini, перезапустив машину, заменив файл index.php,

но ни один не работает. затем я захожу в wamp / temp и удаляю все файлы, и теперь он работает нормально.

...