Mysql

Merci de votre aide mais je comprends pas pourquoi lorsque j’utilise le user et mot de passe dans le fichier debian.cnf je peux me connecter pour par exemple joomla.

Certainement que le fichier que tu cites a les bonnes permissions pour l’utilisateur.
Tandis que Mysql, lui, fonctionne avec root.

Les couples login/mot_de_passe sont associés à une base de données précise à partir d’une machine précise.

Je viens de suivre la procédure indiquée plus haut mais quand j’essaye de me connecter avec
mysql -u root -p
et que je rentre mon nouveau mot de passe tout juste créé,
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)

J’arrive seulement avec le user et pass du fichier debian.cnf?
Des idées?

Attention de ne pas confondre ton pass root général avec ton pass donné à l’installation de mysql pour l’utilisateur root, si tu en as donné un, différent.

je comprends pas car je ne peux pas utiliser mysqladmin et lorsque j’ai besoin de mysql pour une base de donnée pour par exemple joomla, il faut que je mette le user et pass de debian.cnf pour que ca marche sinon rien à faire même en suivant le tuto indiqué plus haut…

mysqladmin est bien installé, je suppose ?

Oui Ricardo il est installé et merci de m’aider. :stuck_out_tongue:

Reprenons dans l’ordre…

Quelle version utilises-tu précisément ?

Ensuite, connecte toi “normalement” avec debian-sys-maint (sans skip-grant-tables préalable), et donne nous le résultat de ces requêtes :

SELECT user,host FROM mysql.user; SELECT host,db FROM mysql.host; SELECT user,host,db FROM mysql.db; SELECT PASSWORD('test');

Salut,

terranux.tuxfamily.org/ traite fort bien le sujet du mot de passe de mysql

Attention, il faut que tu donnes un mot de passe et les accès à root@localhost et non simplement à root.

Ho mais ce n’est pas ton horaire habituel, ça, François : 00:16 :unamused:
Madame t’a mis à la porte et tu ne trouves pas où aller coucher ?
:mrgreen:

[quote=“syam”]Reprenons dans l’ordre…

Quelle version utilises-tu précisément ?

Ensuite, connecte toi “normalement” avec debian-sys-maint (sans skip-grant-tables préalable), et donne nous le résultat de ces requêtes :

SELECT user,host FROM mysql.user; SELECT host,db FROM mysql.host; SELECT user,host,db FROM mysql.db; SELECT PASSWORD('test');[/quote]

Syam,

voici le résultat

ii libdbd-mysql-perl 4.007-1+lenny1 A Perl5 database interface to the MySQL database ii libmysqlclient15off 5.0.51a-24+lenny3 MySQL database client library ii libqt4-sql-mysql 4.4.3-1+lenny1 Qt 4 MySQL database driver ii mysql-admin 5.0r12-1 GUI tool for intuitive MySQL administration ii mysql-client-5.0 5.0.51a-24+lenny3 MySQL database client binaries ii mysql-common 5.0.51a-24+lenny3 MySQL database common files ii mysql-gui-tools-common 5.0r12-1 Architecture independent files for MySQL GUI Tools ii mysql-query-browser 5.0r12-1 Official GUI tool to query MySQL database ii mysql-server 5.0.51a-24+lenny3 MySQL database server (metapackage depending on the latest ver ii mysql-server-5.0 5.0.51a-24+lenny3 MySQL database server binaries ii php5-mysql 5.2.6.dfsg.1-1+lenny8 MySQL module for php5

[code]debian:/home/artex# mysql -u debian-sys-maint -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 72
Server version: 5.0.51a-24+lenny3 (Debian)

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> SELECT user,host FROM mysql.user;
±-----------------±-----+
| user | host |
±-----------------±-----+
| debian-sys-maint | |
±-----------------±-----+
1 row in set (0.00 sec)

mysql> SELECT host,db FROM mysql.host;
Empty set (0.00 sec)

mysql> SELECT user,host,db FROM mysql.db;
Empty set (0.00 sec)

mysql> SELECT PASSWORD(‘test’);
±------------------------------------------+
| PASSWORD(‘test’) |
±------------------------------------------+
| *94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29 |
±------------------------------------------+
1 row in set (0.03 sec)

mysql>
[/code]

En espérant que cela va résoudre mon problème, en tout cas merci beaucoup.

Bon, pas étonnant que tu n’arrives pas à te connecter avec root, vu que… root n’existe plus ! La bonne nouvelle c’est que tu n’utilises pas de droits spécifiques par hôte ou par base, et que tes mots de passe sont au nouveau format.

Petite question : est-ce que tu utilises, par hasard, un panneau de contrôle quelconque (type ISPConfig ou autres) ? Si c’est le cas, il est fort possible que ça soit ça qui t’ait foutu la zone.

Bref, il suffit de recréer les 3 enregistrements root@localhost/127.0.0.1/hostname dans la table user, mais comme je n’ai pas la même version que toi je ne sais pas s’il y a exactement les mêmes privilèges. Quel est le résultat de :

DESCRIBE mysql.user;?

Salut syam, voici ce que cela donne:

[code]mysql> DESCRIBE mysql.user;
±----------------------±----------------------------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±----------------------±----------------------------------±-----±----±--------±------+
| Host | char(60) | NO | PRI | | |
| User | char(16) | NO | PRI | | |
| Password | varchar(41) | NO | | | |
| Select_priv | enum(‘N’,‘Y’) | NO | | N | |
| Insert_priv | enum(‘N’,‘Y’) | NO | | N | |
| Update_priv | enum(‘N’,‘Y’) | NO | | N | |
| Delete_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_priv | enum(‘N’,‘Y’) | NO | | N | |
| Drop_priv | enum(‘N’,‘Y’) | NO | | N | |
| Reload_priv | enum(‘N’,‘Y’) | NO | | N | |
| Shutdown_priv | enum(‘N’,‘Y’) | NO | | N | |
| Process_priv | enum(‘N’,‘Y’) | NO | | N | |
| File_priv | enum(‘N’,‘Y’) | NO | | N | |
| Grant_priv | enum(‘N’,‘Y’) | NO | | N | |
| References_priv | enum(‘N’,‘Y’) | NO | | N | |
| Index_priv | enum(‘N’,‘Y’) | NO | | N | |
| Alter_priv | enum(‘N’,‘Y’) | NO | | N | |
| Show_db_priv | enum(‘N’,‘Y’) | NO | | N | |
| Super_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_tmp_table_priv | enum(‘N’,‘Y’) | NO | | N | |
| Lock_tables_priv | enum(‘N’,‘Y’) | NO | | N | |
| Execute_priv | enum(‘N’,‘Y’) | NO | | N | |
| Repl_slave_priv | enum(‘N’,‘Y’) | NO | | N | |
| Repl_client_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_view_priv | enum(‘N’,‘Y’) | NO | | N | |
| Show_view_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_routine_priv | enum(‘N’,‘Y’) | NO | | N | |
| Alter_routine_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_user_priv | enum(‘N’,‘Y’) | NO | | N | |
| ssl_type | enum(’’,‘ANY’,‘X509’,‘SPECIFIED’) | NO | | | |
| ssl_cipher | blob | NO | | NULL | |
| x509_issuer | blob | NO | | NULL | |
| x509_subject | blob | NO | | NULL | |
| max_questions | int(11) unsigned | NO | | 0 | |
| max_updates | int(11) unsigned | NO | | 0 | |
| max_connections | int(11) unsigned | NO | | 0 | |
| max_user_connections | int(11) unsigned | NO | | 0 | |
±----------------------±----------------------------------±-----±----±--------±------+
37 rows in set (0.02 sec)

mysql>
[/code]

GRANT ALL ON . to root@localhost IDENTIFIED by ‘password’;
devrait remédier au problème

fran.b je viens d’essayer mais cela ne veut pas fonctionner:

ERROR 1045 (28000): Access denied for user ‘debian-sys-maint’@’’ (using password: YES)

Oui, il te faut faire la commande en ayant désactiver l’authentification:

Tu te met sous root, tu arrêtes mysql (/etc/init.d/mysql stop et tu tapes

Dans une autre console, tu fais

$ mysql -u root et là tu tapes les commandes en faisant un «flush privileges» à la fin

Nom d’une pipe, je savais bien qu’il me manquait quelque chose dans la syntaxe GRANT. :blush:
J’avais essayé avec seulement * au lieu de . et forcément ça donnait un résultat que je ne voulais pas (à savoir : des droits uniquement sur la base active). D’où mes contorsions, j’allais lui conseiller des INSERT user(user,host,password,select_priv,insert_priv,…) VALUES(…,‘Y’,‘Y’…).

La méthode GRANT est clairement meilleure, ça m’apprendra à dépendre de phpMyAdmin (qui, en plus, n’est pas réinstallé sur ma nouvelle machine, ce qui explique que je patauge un peu).

Par contre, les tables MySQL par défaut incluent 3 utilisateurs root : root@localhost, root@127.0.0.1, et root@hostname_de_la_machine.
Si ma mémoire ne me joue pas des tours, PHP se connecte avec root@127.0.0.1 et non pas root@localhost.
Mon conseil (pour mettre tous les atouts de son côté) serait de recréer les 3 entrées root par défaut, ça évitera des soucis.

ok je vai essayer et merci à toutes les personnes de m’aider.