Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 26/10/2016, à 18:33

NinJoDo

[Résolu]Impossible d'installer extension mysql sur php 7.0

Bonjour à tous,

Le titre est assez évocateur :-)

J'ai donc fait les choses suivantes pour le moment :
- installation php7.0
- installation mysql
- installation phpmyadmin

Tout fonctionne correctement sauf l'extension Mysql. Quel que soit mon site en local, quel que soit le CMS, il me dit qu'il n'y a pas d'extension mysql.

Pour essayer de régler le problème j'ai :

1. Dans le fichier /etc/php/7.0/apache2/php.ini :
1.1 décommenté mysqli.allow_local_infile = On
1.2 ajouté au fichier les lignes :

extension=mysqli.so
extension=mysql.so
extension=pdo_mysql.so

2. Installé les paquets suivants :

apt-get install php-mysql php-gd

3. Exécuté sans erreur la commande suivante :
sudo phpenmod mysqli

Le résultat de la commande sudo phpenmod mysqli est :

/etc/php/7.0/cli/conf.d/20-mysqli.ini,
mysqli
MysqlI Support => enabled
mysqli.allow_local_infile => On => On
mysqli.allow_persistent => On => On
mysqli.default_host => no value => no value
mysqli.default_port => 3306 => 3306
mysqli.default_pw => no value => no value
mysqli.default_socket => no value => no value
mysqli.default_user => no value => no value
mysqli.max_links => Unlimited => Unlimited
mysqli.max_persistent => Unlimited => Unlimited
mysqli.reconnect => Off => Off
mysqli.rollback_on_cached_plink => Off => Off
API Extensions => mysqli,pdo_mysql

Je précise qu'à chaque fois j'ai redémarré apache2 avec la commande suivante :

sudo service apache2 restart

Je sèche. Si un petit génie passe par là :-)

Dernière modification par NinJoDo (Le 28/10/2016, à 17:52)

Hors ligne

#2 Le 27/10/2016, à 12:51

bobe

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Donc tu confirmes que mysqli est disponible sur ton installation ? Si oui, il ne doit plus y avoir de problème non ?

Hors ligne

#3 Le 27/10/2016, à 12:53

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Bin non c'est ça tout le problème... Le problème n'est pas résolu ! :-/

Hors ligne

#4 Le 27/10/2016, à 12:54

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Mais oui il me mets que mysqli est bien là tout de même

Hors ligne

#5 Le 27/10/2016, à 12:58

bobe

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Tu as un message d'erreur avec une application php ? Si oui, quel est le message ? Quelle est l'application en cause ?

Et si c'est pour une application web, tu as bien des fichiers de config /etc/php/7.0/fpm/conf.d/20-mysqli.ini et/ou /etc/php/7.0/apache/conf.d/20-mysqli.ini ?

Dernière modification par bobe (Le 27/10/2016, à 12:59)

Hors ligne

#6 Le 27/10/2016, à 14:29

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Les messages d'erreur sur les sites en local :

Xoops

Error : mysql extension not loaded

Wordpress

Erreur lors de la connexion à la base de données

Drupal

PDOException: SQLSTATE[HY000] [2002] Connection timed out in lock_may_be_available() (line 167 of /home/*************/Sites/lamp/*************/includes/lock.inc).

Dolibarr

Error: Dolibarr config file content seems to be not correctly defined.
Please run dolibarr setup by calling page /install.

Oui j'ai bien les deux fichiers que tu dis.

Hors ligne

#7 Le 27/10/2016, à 14:45

donut

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Salut,
Normalement, php7.0-mysql est suffisant.
Essaie un :

php -m

Tu peux ausis jeter un œil avec un phpinfo.
Créé un fichier phpinfo.php qui contient ça :

<?php phpinfo(); ?>

Charge le sur ton serveur et ouvre-le, il t'affichera plein d'informations utiles (par contre n'oublie pas de le supprimer, ou en restreindre l'accès).


https://utux.fr (blog perso)

Hors ligne

#8 Le 27/10/2016, à 14:50

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

php -m

[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
imap
interbase
intl
json
ldap
libxml
mbstring
mcrypt
mysqli
mysqlnd
odbc
openssl
pcntl                                                                                                                                                                                       
pcre                                                                                                                                                                                         
PDO                                                                                                                                                                                         
pdo_dblib                                                                                                                                                                                   
PDO_Firebird                                                                                                                                                                                 
pdo_mysql                                                                                                                                                                                   
PDO_ODBC                                                                                                                                                                                     
pdo_pgsql                                                                                                                                                                                   
pdo_sqlite                                                                                                                                                                                   
pgsql                                                                                                                                                                                       
Phar                                                                                                                                                                                         
posix                                                                                                                                                                                       
pspell                                                                                                                                                                                       
readline                                                                                                                                                                                     
recode                                                                                                                                                                                       
Reflection                                                                                                                                                                                   
session                                                                                                                                                                                     
shmop                                                                                                                                                                                       
SimpleXML                                                                                                                                                                                   
snmp
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

Oui j'avais jeté un oeil au phpinfo mais je n'avais pas vu de problème particulier.
Tu voir un truc en particulier ?

Hors ligne

#9 Le 27/10/2016, à 14:57

donut

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

On voit bien le module mysqli mais pas mysql, je sais que les deux sont proches mais les applications ne sont peut-être pas compatibles ou alors il faut leur spécifier.

Dernière modification par donut (Le 27/10/2016, à 14:59)


https://utux.fr (blog perso)

Hors ligne

#10 Le 27/10/2016, à 14:59

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Oui

API Extensions     mysqli,pdo_mysql

Hors ligne

#11 Le 27/10/2016, à 15:04

bobe

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

y a plus l'extension mysql en php 7, seulement mysqli ou bien pdo/mysql

Hors ligne

#12 Le 27/10/2016, à 15:27

donut

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Ok, par contre la configuration de php est différente entre le cli et apache, il faudrait donc vérifier avec phpinfo() que ces modules apparaissent bien.


https://utux.fr (blog perso)

Hors ligne

#13 Le 27/10/2016, à 15:33

bobe

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

c'est le cas je pense, regarde son dernier message.

Hors ligne

#14 Le 27/10/2016, à 15:42

bmzoom

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

mysql -u root -p

Donnera le prompt de mysql

mysql> create database wpblogdb;
Query OK, 1 row affected (0,00 sec)

Dernière modification par bmzoom (Le 27/10/2016, à 15:43)

Hors ligne

#15 Le 27/10/2016, à 16:57

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Réponse de la requête :

mysql> create database wpblogdb;
Query OK, 1 row affected (0,02 sec)

par contre la configuration de php est différente entre le cli et apache

Tu veux bien expliquer parce que je sens confusément que c'est un problème de ce type, mais mes connaissances ne sont pas assez étendues pour ça... Merci !

Hors ligne

#16 Le 27/10/2016, à 17:01

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Dans le phpinfo :

pdo_mysql
PDO Driver for MySQL	enabled
Client API version 	mysqlnd 5.0.12-dev - 20150407 - $Id: 241ae00989d1995ffcbbf63d579943635faf9972 $ 
mysqli
MysqlI Support	enabled
Client API library version 	mysqlnd 5.0.12-dev - 20150407 - $Id: 241ae00989d1995ffcbbf63d579943635faf9972 $
Active Persistent Links 	0
Inactive Persistent Links 	0
Active Links 	0 

Hors ligne

#17 Le 27/10/2016, à 19:47

bmzoom

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Quel que soit mon site en local, quel que soit le CMS, il me dit qu'il n'y a pas d'extension mysql.

Je n'ai pas besoin de CMS
Pour voir,  je vais installer wordpress et reviendrai avec erreur ..

tuto.jpg

Pas d'erreur avec la  version 4.6 de wordpress

Dernière modification par bmzoom (Le 27/10/2016, à 20:16)

Hors ligne

#18 Le 27/10/2016, à 19:49

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

??? euh... Wordpress est un CMS, mais ne trollons pas :-)

Hors ligne

#19 Le 27/10/2016, à 21:14

bruno

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

NinJoDo a écrit :

J'ai donc fait les choses suivantes pour le moment :
- installation php7.0
- installation mysql
- installation phpmyadmin

Tout fonctionne correctement sauf l'extension Mysql. Quel que soit mon site en local, quel que soit le CMS, il me dit qu'il n'y a pas d'extension mysql.

Donc Apache, MySQL et PHP fonctionnent, y compris les connexions aux bases MySQL avec PHP puisque phpmyadmin fonctionne aussi.

Tu te focalises sur un message d'erreur parlant d'extension MySQL mais ce que l'on voit surtout c'est une impossibilité de se connecter aux bases de données depuis les différents CMS que tu essaies (alors que cela fonctionne avec phpmyadmin…)
Ce n'est donc sûrement pas un problème de module PHP, mais un problème de configuration au niveau de tes CMS : configuration des hôtes virtuels Apache, informations de connexion à la base de données erronées, etc.
Les logs d'apache donneraient probablement plus d'informations sur le sujet.

Dernière modification par bruno (Le 28/10/2016, à 07:02)

En ligne

#20 Le 27/10/2016, à 21:37

bmzoom

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

L'éclaircissement est dans ce fichier de log :

sudo gedit  /var/log/apache2/error.log 

Hors ligne

#21 Le 28/10/2016, à 07:07

bruno

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Hum… gedit pour voir les logs, pourquoi pas wink (Encore faut-il avoir une interface graphique.)

Il me semble plus pratique d'ouvrir un terminal :

tail -f /var/log/apache2/access.log

tenter d’accéder avec un navigateur au site web et examiner ce qui s'affiche alors dans la console.

En ligne

#22 Le 28/10/2016, à 11:16

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

Le résultat pour error.log

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysql.so' - /usr/lib/php/20151012/mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: pdo_parse_params in Unknown on line 0
[Fri Oct 28 11:45:36.247726 2016] [mpm_prefork:notice] [pid 4456] AH00163: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
[Fri Oct 28 11:45:36.247739 2016] [core:notice] [pid 4456] AH00094: Command line: '/usr/sbin/apache2'
[Fri Oct 28 12:06:58.923553 2016] [mpm_prefork:notice] [pid 4456] AH00169: caught SIGTERM, shutting down
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysql.so' - /usr/lib/php/20151012/mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: pdo_parse_params in Unknown on line 0
[Fri Oct 28 12:07:47.052564 2016] [mpm_prefork:notice] [pid 1321] AH00163: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
[Fri Oct 28 12:07:47.052599 2016] [core:notice] [pid 1321] AH00094: Command line: '/usr/sbin/apache2'

Access.log est vide...

Merci les gars. Je sens qu'on va y arriver !

Hors ligne

#23 Le 28/10/2016, à 11:19

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

À l'emplacement /usr/lib/php/20151012, il y a bien :
- mysqli.so
- mysqlnd.so
- pdo_mysql.so

Hors ligne

#24 Le 28/10/2016, à 14:21

bruno

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

/usr/lib/php/20151012, c'est l'emplacement des bibliothèques PHP5. Il y a un mélange entre PHP 5 et 7, sans doute suite à une mise à niveau mal terminée ou à l'utilisation de dépôts non officiels.

Tu devrais commencer par purger tout ce qui reste d'installation de PHP5 :

sudo apt-get purge php5* libapache2-mod-php5

En ligne

#25 Le 28/10/2016, à 14:39

NinJoDo

Re : [Résolu]Impossible d'installer extension mysql sur php 7.0

hmmm... je l'avais déjà fait.

Du coup quand je le refais ça donne :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Note, selecting 'php5-mapscript' for glob 'php5*'
Note, selecting 'php5-gd' for glob 'php5*'
Note, selecting 'php5-common' for glob 'php5*'
Note, selecting 'php5-imagick' for glob 'php5*'
Note, selecting 'php5-mcrypt' for glob 'php5*'
Note, selecting 'php5.6-json' for glob 'php5*'
Note, selecting 'php5-pgsql' for glob 'php5*'
Note, selecting 'php5.6-common' for glob 'php5*'
Note, selecting 'php5-cgi' for glob 'php5*'
Note, selecting 'php5-cli' for glob 'php5*'
Note, selecting 'php5-dev' for glob 'php5*'
Note, selecting 'php5-phpdbg' for glob 'php5*'
Note, selecting 'php5-fpm' for glob 'php5*'
Note, selecting 'php5-mysql' for glob 'php5*'
Note, selecting 'php5' for glob 'php5*'
Note, selecting 'php5-sqlite' for glob 'php5*'
Le paquet « php5-fpm » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5.6-common » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5.6-json » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5 » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-cgi » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-cli » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-dev » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-common » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-mcrypt » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-mysql » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-pgsql » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-sqlite » n'est pas installé, et ne peut donc être supprimé
Le paquet « php5-gd » n'est pas installé, et ne peut donc être supprimé                                                                                                                      
Le paquet « php5-mapscript » n'est pas installé, et ne peut donc être supprimé                                                                                                               
Le paquet « php5-phpdbg » n'est pas installé, et ne peut donc être supprimé                                                                                                                  
Le paquet « php5-imagick » n'est pas installé, et ne peut donc être supprimé                                                                                                                 
Le paquet « libapache2-mod-php5 » n'est pas installé, et ne peut donc être supprimé                                                                                                          
0 mis à jour, 0 nouvellement installés, 0 à enlever et 6 non mis à jour. 

Hors ligne