web-dev-qa-db-fra.com

phpMyAdmin - L'extension MySQL est manquante

J'ai tout installé séparément (Apache, PHP, MySQL et phpMyAdmin) et je n’utilise pas de compilation, tout fonctionne bien jusqu’à présent sauf phpMyAdmin. 

Le problème que je rencontre est que le message d'erreur indique que "l'extension MySQL est manquante" dès que j'essaie d'appeler: 

localhost/phpmyadmin/index.php

Et quand j'appelle 

localhost/phpmyadmin/setup/index.php

J'ai deux messages où je ne sais pas si c'est supposé être comme ça: 

La compression et la décompression Bzip2 nécessite des fonctions (bzopen, Bzcompress) qui ne sont pas disponibles sur ce système.

et:

La décompression ZIP nécessite des fonctions (Zip_open) qui ne sont pas disponibles Sur ce système.

Aucune suggestion?

7
Carpet

Au début, assurez-vous que mysql est installé correctement. Vous pouvez vous en assurer simplement en vérifiant si vous pouvez ou non accéder à mysql à l'aide de la commande promp de mysql. Donc si vous utilisez mysql, alors il n’est probablement pas en train de se charger. Pour cela suivez les étapes ci-dessous

Tout d'abord, vous devez trouver votre php.ini. Cela peut être n'importe où mais si vous créez un petit fichier php avec le 

<?php phpinfo(); ?>

le script vous dira où il se trouve. Il suffit de regarder le chemin du fichier de configuration chargé. Les emplacements communs incluent/etc/Apache /, /etc/php4/Apache2/php.ini, /etc/php5/Apache2/php.ini ou même/usr/local/lib/php.ini pour Windows, il peut s'agir de C:\Utilisateurs\nom d'utilisateur\PHP\php.ini 

Editez le fichier php.ini de votre serveur et cherchez la ligne suivante. Supprimez le «;» au début de la ligne et redémarrez Apache. Les choses devraient bien fonctionner maintenant!

;extension=mysql.so

devraient devenir

extension=mysql.so

Pour les fenêtres ce sera 

;extension=mysql.dll

devraient devenir

extension=mysql.dll
9
Alim Ul Gias

Certaines distributions linux ont un paquet php_mysql et php_mysqli à installer.

3
Ivan Buttinoni

Je viens d'ajouter

apt-get install php5-mysqlnd

Cela demandera de remplacer mysql.so de "php5-mysql".

Ce travail pour moi.

3
Alez Dakidd

Comme d’autres l’ont déclaré, vous devez supprimer le ';' de: 
;extension=php_mysql.dll et 
;extension=php_mysqli.dll

dans votre php.ini pour activer les extensions mysql et mysqli. Mais LE PLUS IMPORTANT de tous , vous devez définir le extension_dir dans votre php.ini pour qu'il pointe vers votre répertoire d'extensions. La plupart du temps, la valeur par défaut est "ext". Vous devriez le changer en absolute chemin du dossier des extensions. c'est-à-dire que si votre xampp est installé sur le lecteur C, alors C:/xampp/php/ext est le chemin absolu du dossier ext et il devrait fonctionner comme un charme!

2

Dans mon cas, j'ai dû installer l'extension:

yum install php php-mysql httpd

puis redémarrez Apache:

service httpd restart

Cela a résolu le problème.

2
KalenGi

Vous devez mettre le chemin complet dans l’ini php lors du chargement de la dll mysql, c’est-à-dire: -

extension = c: /php54/ext/php_mbstring.dll
extension = c: /php54/ext/php_mysql.dll

Ensuite, vous n'avez pas besoin de les déplacer dans le dossier Windows.

2
Gavin Simpson

L’installation des extensions bzip2 et Zip PHP a résolu mon problème dans Ubuntu:

Sudo apt-get install php7.0-bz2
Sudo apt-get install php7.0-Zip

Utilisez php(you version)-(extension) pour installer et activer tout module manquant requis dans le fichier Lisez-moi de phpmyadmin.

1
Hafez Divandari

Certains modules php manquent dans votre installation, une liste des modules requis devrait figurer dans le fichier Lisez-moi de phpmyadmin. Si vous avez récemment activé les modules, essayez de redémarrer le service/démon Apache.

Edit: Comme il semble, il n’existe pas de "activer ces modules" dans la documentation, donc activez soit mysql, soit mysqli dans votre fichier php.ini (vous devrez peut-être l’installer d’abord).

Les deux messages ne sont pas importants si vous n'avez pas l'intention de télécharger ou de télécharger un fichier compressé dans phpMyAdmin. Si vous le faites, activez les modules zlib et/ou bz2.

1
Stephan B

J'ai eu un problème similaire, mais l'ajout de l'extension = mysql.so dans mon php.ini n'a pas aidé. Il s'est avéré que le fichier mysql.so ne se trouvait ni dans mon dossier d'extension ni ailleurs sur ma machine. Résolu cela en téléchargeant la source php et en construisant l'extension manuellement, puis en le copiant dans le dossier d'extension.

0
Dagligleder

Il suffit de vérifier votre fichier php.ini, dans ce fichier le point-virgule (;) utilisé pour le commentaire Si vous voyez puis supprimer le point-virgule;.

;extension=mysql.dll

Votre extension est maintenant activée, mais vous devez redémarrer appache.

extension=mysql.dll
0
user1058988