Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Administration
Administration Forum d'entraide sur l'administration de MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/02/2011, 11h41   #1
Nouveau Membre du Club
 
Avatar de fripette
 
Inscription : octobre 2006
Messages : 222
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : octobre 2006
Messages : 222
Points : 35
Points : 35
Par défaut Ajout de nouveaux utilisateurs

Bonjour,

Je travaille avec MySQL (bien entendu) via principalement phpmyadmin.
De plus mes pages web sont de type Perl CGI.

Je bloque au niveau de l'ajout d'un nouvel utilisateur, qui au final me fait planter l'acces a ma base via mes CGI pour les anciens utilisateurs (il est clair que je ne comprends pas tout)


Voici le probleme :
J'ajoute un nouvel utilisateur USER_NAME, avec le mot de passe USER_PWD : requete faite via phpmyadmin

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
INSERT INTO `mysql`.`user` (
`Host` ,
`User` ,
`Password` ,
`Select_priv` ,
`Insert_priv` ,
`Update_priv` ,
`Delete_priv` ,
`Create_priv` ,
`Drop_priv` ,
`Reload_priv` ,
`Shutdown_priv` ,
`Process_priv` ,
`File_priv` ,
`Grant_priv` ,
`References_priv` ,
`Index_priv` ,
`Alter_priv` ,
`Show_db_priv` ,
`Super_priv` ,
`Create_tmp_table_priv` ,
`Lock_tables_priv` ,
`Execute_priv` ,
`Repl_slave_priv` ,
`Repl_client_priv` ,
`Create_view_priv` ,
`Show_view_priv` ,
`Create_routine_priv` ,
`Alter_routine_priv` ,
`Create_user_priv` ,
`ssl_type` ,
`max_questions` ,
`max_updates` ,
`max_connections` ,
`max_user_connections`
)
VALUES (
'localhost', 'USER_NAME', 'USER_PWD', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', '', '0', '0', '0', '0'
);
Resultat:
Code :
1
2
3
4
Nombre d'enregistrements insérés : 1
Warning: #1364 Field 'ssl_cipher' doesn't have a DEFAULT value
Warning: #1364 Field 'x509_issuer' doesn't have a default value
Warning: #1364 Field 'x509_subject' doesn't have a default value
PUIS
Code :
1
2
3
4
 
FLUSH PRIVILEGES;
 
Votre requête SQL a été exécutée avec succès (traitement: 0.0005 sec.)

Je passe dans ma console et essaye de lancer mysql avec mon nouvel user :
Code :
1
2
3
4
 
mysql -u USER_NAME -p
Enter password: 
ERROR 1045 (28000): Access denied FOR user 'USER_NAME '@'localhost' (USING password: YES)
OR la ligne apparait bien quand je fais un select * from user, via phpmyadmin.

Aussi , lorsque je me logue en root sur mysql via ma console je peux aussi voir mon utilisateur nouvellement cree dans la table user.

De plus, lorsque j'essaye de me connecter via la console avec USER_NAME sans mot de passe, la connection se fait .


Enfin quand j'essaye de relancer ma page CGI avec mon propre User name (qui a tous les droits) j'ai ce message :
Code :
1
2
 
Client does NOT support authentication protocol requested BY server; consider upgrading MySQL client
J'ai deja regle ce probleme avec
Code :
1
2
3
 
SET PASSWORD FOR
    -> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
Preconise dans la doc Mysql, mais n'y a til pas un moyen de regler ce probleme definitivement.

Je rappelle pour information que ma connection via mon propre User marchait tres bien avant essais d'ajout du nouvel User.


Je n'y comprends absolument rien : pourriez vous m'aider s'il vous plait ??

merci d'avance
fripette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 15h48   #2
Membre du Club
 
Inscription : mars 2005
Messages : 66
Détails du profil
Informations personnelles :
Âge : 39

Informations forums :
Inscription : mars 2005
Messages : 66
Points : 44
Points : 44
Bonjour,
Pourquoi faire compliquer quand on peut faire simple.

Utiliser une des commandes de création de user prévu à cet effet:
Code :
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER ........ ON `ma_db`.* TO 'mon_user'@'mon ip' IDENTIFIED BY 'mon_password';
Cet ordre alimente correctement les tables user et db de la base mysql.

il faut supprimer votre user auparavant. (delete from user ...; delete from db ...)

Sebastien
__________________
DBA SQLServer, Oracle, Mysql, DB2, Postgresql
slefevre01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h12.


 
 
 
 
Partenaires

Hébergement Web