Pages : 1
#1 Le 06/02/2022, à 10:59
- JME44
[Résolu] php-mysql : PDO could not find driver
Bonjour,
Depuis l'installation de php 8, PDO ne trouve plus son driver mysql (en fait pour mariadb).
Tous les sites utilisant le CMD SPIP fonctionnent => SPIP ne doit pas utiliser PDO mais accède autrement aux bases de données qui sont donc parfaitement accessibles.
Une application perso utilisant les mêmes bases avec PDO ne fonctionne plus.
localhost/info.php indique :
PHP Version 8.0.15
...
PDO drivers no value
apt list php*mysql indique
php-mdb2-driver-mysql/focal,focal 1.5.0b4-2 all
php-mysql/focal,focal 2:8.1+92+ubuntu20.04.1+deb.sury.org+2 all
php5.6-mysql/focal 5.6.40-57+ubuntu20.04.1+deb.sury.org+1 amd64
php7.0-mysql/focal 7.0.33-57+ubuntu20.04.1+deb.sury.org+1 amd64
php7.1-mysql/focal 7.1.33-44+ubuntu20.04.1+deb.sury.org+1 amd64
php7.2-mysql/focal,now 7.2.34-28+ubuntu20.04.1+deb.sury.org+1 amd64 [installé]
php7.3-mysql/focal 7.3.33-1+ubuntu20.04.1+deb.sury.org+1 amd64
php7.4-mysql/focal,now 7.4.27-1+ubuntu20.04.1+deb.sury.org+1 amd64 [installé]
php7.4-mysql/focal 7.4.26-1+ubuntu20.04.1+deb.sury.org+2 i386
php8.0-mysql/focal 8.0.15-1+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante]
php8.0-mysql/focal 8.0.12-1+ubuntu20.04.1+deb.sury.org+1 i386
php8.1-mysql/focal,now 8.1.2-1+ubuntu20.04.1+deb.sury.org+1 amd64 [installé]
J'ai trouvé le même problème ici mais ça date de 2006 donc porte sur d'anciennes versions.
Au vu de l'information "configuration restante", j'ai trouvé ici la suggestion que j'ai adaptée
sudo dpkg-reconfigure mariadb-server
sans écho, retour direct à la ligne.
Qu'ai-je oublié de mettre en place ou comment forcer un des sites à utiliser une version précédente de php ?
Merci d'avance
modération : déplacement de Accès internet et réseaux vers Serveurs
Dernière modification par JME44 (Le 09/02/2022, à 08:32)
Ubuntu 24.04 sur AMD Ryzen 7 2700x et autres sous diverses versions d'Ubuntu, y compris sur Raspberry.
Hors ligne
#2 Le 06/02/2022, à 13:24
- krodelabestiole
Re : [Résolu] php-mysql : PDO could not find driver
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#3 Le 06/02/2022, à 18:05
- mazarini
Re : [Résolu] php-mysql : PDO could not find driver
php8.0-mysql/focal 8.0.15-1+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante]
php8.0-mysql/focal 8.0.12-1+ubuntu20.04.1+deb.sury.org+1 i386
Tu utilises php 8.0.15 et il n'y a pas de php8.0-mysql installé.
Edit : n'installes pas de 386, juste de l'amd64.
Dernière modification par mazarini (Le 06/02/2022, à 18:07)
S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)
Hors ligne
#4 Le 06/02/2022, à 19:19
- JME44
Re : [Résolu] php-mysql : PDO could not find driver
Merci à vous deux
Première suggestion : le lien de krodelabestiole
Après avoir fait un sudo apt remove php*, suivi d'un autoremove et d'un autoclean, apt list php*mysql donne
php-mdb2-driver-mysql/focal,focal 1.5.0b4-2 all
php-mysql/focal,focal 2:8.1+92+ubuntu20.04.1+deb.sury.org+2 all
php5.6-mysql/focal 5.6.40-57+ubuntu20.04.1+deb.sury.org+1 amd64
php7.0-mysql/focal 7.0.33-57+ubuntu20.04.1+deb.sury.org+1 amd64
php7.1-mysql/focal 7.1.33-44+ubuntu20.04.1+deb.sury.org+1 amd64
php7.2-mysql/focal,now 7.2.34-28+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante]
php7.3-mysql/focal 7.3.33-1+ubuntu20.04.1+deb.sury.org+1 amd64
php7.4-mysql/focal,now 7.4.27-1+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante]
php7.4-mysql/focal 7.4.26-1+ubuntu20.04.1+deb.sury.org+2 i386
php8.0-mysql/focal 8.0.15-1+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante]
php8.0-mysql/focal 8.0.12-1+ubuntu20.04.1+deb.sury.org+1 i386
php8.1-mysql/focal,now 8.1.2-1+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante]
Puis un sudo apt install php7.2 suivi d'un reboot
Apache tourne.
[b]moi@machine:[/b]php -version
PHP 7.2.34-28+ubuntu20.04.1+deb.sury.org+1 (cli) (built: Nov 19 2021 06:36:58) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.34-28+ubuntu20.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
[b]moi@machine:[/b]a2enmod php7.2
Considering dependency mpm_prefork for php7.2:
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Module mpm_prefork already enabled
Considering conflict php5 for php7.2:
Module php7.2 already enabled
localhost/info.php indique
PHP Version 7.2.34-28+ubuntu20.04.1+deb.sury.org+1
...
PDO drivers no value
Donc toujours pas de driver pour PDO/mysql
Deuxième suggestion
php8.0-mysql/focal 8.0.15-1+ubuntu20.04.1+deb.sury.org+1 amd64 [configuration restante] php8.0-mysql/focal 8.0.12-1+ubuntu20.04.1+deb.sury.org+1 i386
Tu utilises php 8.0.15 et il n'y a pas de php8.0-mysql installé.
Doit-on avoir une correspondance de version jusqu'au troisième niveau ? Je n'ai pas vu de php8.0.XXX-mysql
Toujours dans la mouise !
Dernière modification par JME44 (Le 06/02/2022, à 19:27)
Ubuntu 24.04 sur AMD Ryzen 7 2700x et autres sous diverses versions d'Ubuntu, y compris sur Raspberry.
Hors ligne
#5 Le 08/02/2022, à 10:39
- krodelabestiole
Re : [Résolu] php-mysql : PDO could not find driver
Après avoir fait un sudo apt remove php*
c'est pas ça qui est indiqué dans la doc. on te conseille plutôt de purger le dépôt d'ondrej sury qui est connu pour poser très régulièrement des problèmes, et de ne garder dans la mesure du possible que la version de php livrée dans les dépôts officiels de ta distro.
si tu as besoin d'autres versions de PHP, oriente-toi plutôt vers docker ou PHPBrew : APT n'est pas fait pour gérer simultanément plusieurs versions d'un même logiciel, il s'agit ici d'un hack de la part du mainteneur de ce dépôt (indiquer les numéros de versions dans le nom des paquets), et à moins de savoir parfaitement ce qu'on fait, ça pose quasi systématiquement des problèmes à un moment ou à un autre (le forum déborde d'exemples).
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#6 Le 09/02/2022, à 08:42
- JME44
Re : [Résolu] php-mysql : PDO could not find driver
Bonjour,
purger le dépôt d'ondrej sury
J'ai supprimé le dépôt ondrej que je n'ai pas souvenir d'avoir installé explicitement.
Je n'ai pas trouvé trace d'un dépôt suri puis nettoyé toute trace de php.
Ensuite j'ai installé sans précision de version php et php-mysql.
Il s'agit de la 7.4 et tout roule.
Merci krodelabestiole
Dernière modification par JME44 (Le 09/02/2022, à 13:43)
Ubuntu 24.04 sur AMD Ryzen 7 2700x et autres sous diverses versions d'Ubuntu, y compris sur Raspberry.
Hors ligne
Pages : 1