Installation phpmyadmin

Bonjour,

Je suis en train d’apprendre php-mysql. Après avoir installé (sur mon portable) apache2, mysql-server et php5 sans problèmes j’ai tenté d’installer phpmyadmin (via Synaptic). Dans cette installation j’ai accepté l’option de configurer la base de données de phpmyadmin avec dbconfig-common ; ensuite je dois mentionner un MdP pour l’admin de la base de données, puis un autre MdP de connexion MySql pour phpmyadmin. Mais lorsque je poursuis l’installation apparaît alors un message d’erreur : “ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)”. Si j’ignore le message d’erreur l’installation se complète. Mais lorsque je démarre phpmyadmin et que je m’identifie par UID et MdP, phpmyadmin affiche deux messages d’erreurs : “#1045 Connexion au serveur MySQL non permise” et “La connexion au controluser tel que défini dans votre configuration a échoué”. Que je mentionne mon UID d’utilisateur Debian ou bien ROOT, dans aucun des cas je ne suis reconnu par phpmyadmin.

Je suis alors allé voir dans les fichiers /etc/dbconfig-common/phpmyadmin.conf et /etc/phpmyadmin/config-db.php où j’ai pu constater que le “dbuser” par défaut n’est ni root ni mon uid debian mais bien … “phpmyadmin”. Cependant même en utilisant ce dbuser phpmyadmin ne me reconnaît toujours pas …

[code]Préconfiguration des paquets…
Sélection du paquet phpmyadmin précédemment désélectionné.
(Lecture de la base de données… 192570 fichiers et répertoires déjà installés.)
Dépaquetage de phpmyadmin (à partir de …/phpmyadmin_4%3a3.4.11.1-2_all.deb) …
Traitement des actions différées (« triggers ») pour « hicolor-icon-theme »…
Traitement des actions différées (« triggers ») pour « man-db »…
Paramétrage de phpmyadmin (4:3.4.11.1-2) …
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf

Creating config file /etc/dbconfig-common/phpmyadmin.conf with new version

Creating config file /etc/phpmyadmin/config-db.php with new version
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES).
unable to connect to mysql server.
error encountered creating user:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
dbconfig-common: phpmyadmin configure: trying again (skip questions).
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf
Replacing config file /etc/phpmyadmin/config-db.php with new version
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES).
unable to connect to mysql server.
error encountered creating user:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
dbconfig-common: phpmyadmin configure: ignoring errors from here forwards
populating database via sql… done.
dbconfig-common: flushing administrative password
dbconfig-common: phpmyadmin configure: ignoring errors from here forwards
[ ok ] Reloading web server config: apache2.[/code]

Après avoir effectué quelques recherches j’ai constaté que le problème est fréquent. Mais je n’ai trouvé aucune solution compréhensible pour mon système (Debian7) …

Merci.

Salut,

À mon avis, c’est ici que se situe ton erreur.

Lors de l’installation de [mono]mysql-server[/mono] tu as renseigné un mot de pass pour l’administrateur (root mysql) de la base.

Il te fallait durant la phase d’installation de [mono]phpmyadmin[/mono] fournir (pour autoriser la création de la base phpadmin) le mdp de l’admin (root mysql).

Autrement dit un mdp pour l’user phpmyadmin.

Le plus sage serait de désinstaller proprement [mono]phpmyadmin[/mono] ainsi que [mono]dbconfig-common[/mono], puis nettoyer les résidus de répertoires et fichiers.

Pour l’heure, il te faut rétablir ce mot de pass comme suit : Changer le mot de passe de root sur Mysql .

J’ai suivi tes instructions et celles de lorelei --> ça marche nickel maintenant !

Merci BelZéButh :023

Cool ! :023

Ne faisons qu’un. :wink:

Sinon, ton erreur (te souviens tu ?) se situait elle dans le mdp administrateur (fournit) lors de l’install [mono]phpmyadmin[/mono] ?

ps : penses à passer ton sujet comme résolu. (coche verte)

Je n’ai pas souvenir d’avoir du mentionner un MdP lors de l’installation de mysql-server. Peut-être que ce fut quand même le cas, mais ça m’étonne de n’avoir pas noté ce MdP …
À moins que cette installation se fasse automatiquement avec un MdP par défaut ?

Lors de l’installation de phpmyadmin j’ai d’ailleurs cru qu’il m’était demandé de créer un MdP mysql pour root, et non pas de rappeler ce MdP (dont, comme expliqué ci-dessus, je n’avais d’ailleurs aucun souvenir …). J’ai donc certainement mentionné un MdP incorrect. Et ce qui n’arrange pas les choses c’est que cette erreur n’est pas traitée de façon très compréhensible (du moins pour un novice) par phpmyadmin.

Je suppose que XAMPP permet justement d’éviter ces problèmes. Dommage que Debian ne comprenne pas XAMPP …

J’ai un nouveau problème : impossible de créer un base de données via phpmyadmin (“Aucun privilège”). Je ferme alors phpmyadmin, le rouvre et me connecte cette fois en root. Mais là, même problème : “Aucun privilège”.

Je refais un tentative fermeture/reconnection (en root) et là … ça marche : je peux enfin créer une base de données. Comprenne qui pourra …

Salut,

Si je ne m’abuse (n’étant pas un fervent de l’interface [mono]phpmyadmin[/mono]) l’user [mono]phpmyadmin[/mono] n’a pas (par défaut et c’est tant mieux) les privilèges pour ce faire, contrairement à root mysql.

Une nouvelle erreur sur le mot de pass du compte Administrateur de la base msql (root mysql) ?

Disons qu’avec le retour des messages d’erreurs il serait plus aisé d’identifier la cause(s) … :083

Quel sont ces retours :

?

?

Lances une console root system (~:#) puis connectes toi en tant que root mysql.

[code][12:07:27] ~ # mysql -u root -p
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 70
Server version: 5.5.37-0+wheezy1 (Debian)

Copyright © 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql>
mysql> show databases;[/code]

?

?

Puis quittes proprement.

[code]mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit;
Bye
[12:27:44] ~ #[/code]

$ COLUMNS=132 dpkg -l | grep phpmyadmin
ii phpmyadmin 4:3.4.11.1-2 all MySQL web administration tool

$ COLUMNS=132 dpkg -l | grep dbconfig-common
ii dbconfig-common 1.8.47+nmu1 all common framework for packaging database applications

mysql> show databases;
±-------------------+
| Database |
±-------------------+
| information_schema |
| mysql |
| performance_schema |
| phpmyadmin |
| test |
±-------------------+
5 rows in set (0.01 sec)

mysql> select host,user,password from user;
ERROR 1046 (3D000): No database selected

Aha …

Reprends la connexion en tant que root mysql, puis …

?

[code]mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)

mysql> quit;
Bye
[13:33:04][root@facteur] ~ #[/code]

mysql> select host,user,password from user;

±----------±-----------------±------------------------------------------+
| host | user | password |
±----------±-----------------±------------------------------------------+
| localhost | root | *517xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| machine0 | root | *517xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| 127.0.0.1 | root | *517xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| ::1 | root | *517xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| localhost | debian-sys-maint | *450xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| localhost | phpmyadmin | *2AAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
±----------±-----------------±------------------------------------------+
6 rows in set (0.00 sec)

Cela me semble correct, dernières vérifications.

[mono]# service mysql status[/mono] ?

# service mysql status
[info] /usr/bin/mysqladmin Ver 8.42 Distrib 5.5.37, for debian-linux-gnu on x86_64
Copyright © 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Server version 5.5.37-0+wheezy1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 30 sec

Threads: 1 Questions: 140 Slow queries: 0 Opens: 215 Flush tables: 1 Open tables: 52 Queries per second avg: 4.666.

[quote=“François”]# service mysql status

[…]

Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 30 sec

Threads: 1 Questions: 140 Slow queries: 0 Opens: 215 Flush tables: 1 Open tables: 52 Queries per second avg: 4.666.[/quote]

Ok. Classification, mdp erroné lors de la création d’une base, via [mono]phpmyadmin[/mono], je pense.

Nouveau problème (PS : je suis la formation openclassrooms.comConcevez votre site ouaib avec PHP et MySql”, et j’en suis au chapitre 3.3 “Lire des données”).

Le code php suivant à pour effet que la suite de la page php est blanche, signe d’erreur.

<?php $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', ''); ?>

Le même code avec traitement d’erreur affiche : “Erreur : SQLSTATE[28000] [1045] Access denied for user ‘root’@‘localhost’ (using password: NO)

<?php try { $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', ''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } ?>

La seule explication que mes très limitées connaissances en php-mysql me permettent d’imaginer est que PDO n’est pas activé. Mais la mesure d’activation présentée par openclassrooms.com ne correspond pas à mes fichiers de config que voici :

php.ini -->

[code][Pdo]
; Whether to pool ODBC connections. Can be one of “strict”, “relaxed” or “off”
; http://php.net/pdo-odbc.connection-pooling
;pdo_odbc.connection_pooling=strict

;pdo_odbc.db2_instance_name

[Pdo_mysql]
; If mysqlnd is used: Number of cache slots for the internal result set cache
; http://php.net/pdo_mysql.cache_size
pdo_mysql.cache_size = 2000

; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults.
; http://php.net/pdo_mysql.default-socket
pdo_mysql.default_socket=[/code]

pdo.ini -->

; configuration for php PDO module ; priority=10 extension=pdo.so

Questions :

  • le problème du code php est-t-il du à la non-activation de PDO ?
  • dans l’affirmative que dois-je faire pour activer PDO ?

Merci

[size=85]PS : n’étant pas certain que ce problème n’est pas lié à celui évoqué dans les messages précédents je n’ai pas créé un nouveau sujet.[/size]

Salut,

[quote=“François”]; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults.
; php.net/pdo_mysql.default-socket
pdo_mysql.default_socket=[/quote]

[mono]pdo_mysql.default_socket= /var/run/mysqld/mysqld.sock[/mono] non ?

Hello BelZéButh, j’ai modifié comme tu le proposes les fichiers :
etc/php5/apache2/php.ini
etc/php5/cli/php.ini

Mais cela n’a pas d’effet. Le code php affiche toujours : “Erreur : SQLSTATE[28000] [1045] Access denied for user ‘root’@‘localhost’ (using password: NO)”.

Bon, openclassrooms dit : “Enregistrez le fichier (php.ini) puis redémarrez PHP. Il suffit pour cela de relancer votre logiciel favori (WAMP, MAMP, XAMPP…)”. Ok mais j’installé php5 directement sans passer par l’une de ces applications, alors comment démarrer php ? (à propos : c’est quoi alors qui a “démarré php” ?). Je fais “# php5” dans la console --> le curseur va à la ligne, clignote quelques secondes puis s’arrête --> je ferme la console. Mais toujours aucun effet. Je me dis alors que php est peut-être démarré avec debian --> je redémarre Debian. Mais toujours aucun effet sur ma page php …

À noter que le message d’erreur renvoyé par le code php est le même que celui mentionné dans le premier message de ce sujet …

[quote=“François”]Mais cela n’a pas d’effet. Le code php affiche toujours : “Erreur : SQLSTATE[28000] [1045] Access denied for user ‘root’@‘localhost’ (using password: NO)”.
[/quote]

Lors de ma première intervention, je te faisais part de :

[quote=“moi”]Le plus sage serait de désinstaller proprement phpmyadmin ainsi que dbconfig-common, puis nettoyer les résidus de répertoires et fichiers.

[/quote]Tu es passé outre.

À présent, je compléterai le tout avec celle de [mono]mysql-server et consort[/mono], histoire de te positionner sur une install toute propre et fonctionnelle.

Au travers de l’indien.

J’avais bien suivi toutes tes instructions du 23 Juin 2014 18:03. Mais bon, je désinstalle tout dans l’ordre inverse d’installation. Je viens de virer complètement phpmyadmin puis dbconfig-common. Maintenant je vais virer php5. Cependant Synaptic précise que “Ceci est un méta-paquet qui garantit, une fois installé, la mise en place d’au moins l’une des quatre versions de l’interpréteur côté serveur PHP5. La suppression de ce paquet ne désinstallera pas PHP5 du système, mais elle pourrait provoquer la suppression d’autres paquets dépendants de celui-ci”. Je dois désinstaller quel(s) programme(s) exactement alors ?

Oublies [mono]synaptic[/mono] et compagnie.

Non, pas si vite.

Les retours (complets) suivants seront nécessaires.

$ dpkg -l | grep dbconfig-common $ dpkg -l | grep phpmyadmin