Se connecter au serveur Mysql

Se connecter au serveur Mysql - PHP - Programmation

Marsh Posté le 26-09-2006 à 17:00:06    

Petit problème, dans ma base MySql j'ai l'utilisateur root et j'ai aps mis de mot de passe.
Si je fais: mysql_connect("localhost","root","" ) or die ("La connexion a la base est impossible" );
               la connexion est établie.
Mais si je fais: mysql_connect("localhost","nom","" ) or die ("La connexion a la base est impossible" );
                       la connexion est aussi établie alors qu'il n'existe pas d'utilisateur nom
 
Si par contre je met un mot de passe: mysql_connect("localhost","nom","mdp" )
                   la connexion n'est pas établie

Reply

Marsh Posté le 26-09-2006 à 17:00:06   

Reply

Marsh Posté le 26-09-2006 à 17:05:33    

tu as pensé a créer un utilisateur nom ?

Reply

Marsh Posté le 26-09-2006 à 17:11:47    

J'ai creer un utilisateur avec un mot de passe dans la table user.
Si je fait: mysql_connect("localhost","nomUtilisateur","" ) or die ("La connexion a la base est impossible" ); Ca passe
Mais si je fais mysql_connect("localhost","nomUtilisateur","motDePasse" ) or die ("La connexion a la base est impossible" ); Ca passe pas alors le le mot de passe est motDePasse

Reply

Marsh Posté le 26-09-2006 à 17:23:32    

La magie des conections anonyme. Alias la magie de l'existance d'un utilisateur nomé % pour la machine locale. (voir table mysql.user , la ligne contenant "%" dans la colonne "user" )


Message édité par omega2 le 26-09-2006 à 17:24:08
Reply

Marsh Posté le 26-09-2006 à 17:36:05    

Dans la colonne User de la table user il n'y a pas de %.

Reply

Marsh Posté le 26-09-2006 à 18:44:57    

Faut recharger mysql si tu apportes une modif aux tables de mysql ;)
 
Par contre tu avais créé ton utilisateur 'nom' ou pas avant ton premier test :??:

Reply

Marsh Posté le 26-09-2006 à 20:27:21    

pas au tout debut mais j ai refais les mêmes tests en ayant creer l utilisateur

Reply

Marsh Posté le 26-09-2006 à 21:05:44    

Il doit y avoir quelque chose ailleurs dans une autre table genre host...
 
Je répète que pour qu'une modification soit prise en compte il faut recharger mysql!
 
Et réussir à établir une connexion, même si je suis d'accord que ça devrait pas tout court, c'est pas pouvoir en faire quelque chose ensuite :)

Reply

Marsh Posté le 27-09-2006 à 14:03:26    

Bien maintenant seul root peut se connecter au serveur Mysql, il n'accepte plus aucun autre utilisateur

Reply

Marsh Posté le 27-09-2006 à 14:21:25    

:d Qu'as tu fait :??:
 
Quels sont les messages d'erreur :??:
 
Tu as bien tout comme il faut dans la table user :??:
 
Postes tout ça qu'on y voit plus clair ;)

Reply

Marsh Posté le 27-09-2006 à 14:21:25   

Reply

Marsh Posté le 28-09-2006 à 14:14:46    

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 ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections
 
localhost root         Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  [BLOB - 0 Octets]  [BLOB - 0 Octets]  [BLOB - 0 Octets]  0  0  0
localhost nom mdp Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  N  Y  Y  Y  Y  [BLOB - 0 Octets]  [BLOB - 0 Octets]  [BLOB - 0 Octets]   0  0  0


Message édité par marc90 le 28-09-2006 à 14:23:28
Reply

Marsh Posté le 28-09-2006 à 15:06:10    

T'as pas de message d'erreur :??: mysql a bien été redémarré :??:
T'as rien dans les autres tables (host, db) et t'essaye bien de te connecter depuis 'localhost' :??:

Reply

Marsh Posté le 28-09-2006 à 17:25:30    

Dans la table host j'avais mis un enregistrement.
 
localhost   AdresseIP   Y   Y   Y   Y   Y   Y   Y   Y   Y   Y   Y
 
Et dans la table db j'ai rajouté un enregistrement
%   test       Y   Y   Y   Y   Y   Y   N   Y   Y   Y   Y   Y
 Modifier  Effacer  %  test\_%     Y  Y  Y  Y  Y  Y  N  Y  Y  Y  Y  Y
 Modifier  Effacer  localhost  AdresseIP  nom Y  Y  Y  Y  Y  Y  N  Y  Y  Y  Y  Y

Reply

Marsh Posté le 28-09-2006 à 22:12:30    

vires tout dans host et db puis redémarre et vois ;)

Reply

Marsh Posté le 29-09-2006 à 08:34:58    

Daccord

Reply

Marsh Posté le 29-09-2006 à 15:38:21    

et donc :whistle:


Message édité par leflos5 le 29-09-2006 à 15:38:30
Reply

Marsh Posté le 29-09-2006 à 20:26:07    

Bon là, j'ai laisser dans la table db les enregistrements par défaut et virer l'enregistrment que j'avais mis dans la table host. Le mysqlconnect ne marche qu'avec l'utilisateur root

Reply

Marsh Posté le 29-09-2006 à 21:24:07    

Mais avec ou sans mdp :??:
Et pour l'autre ça te dit quoi quand tu essayes quoi :??:

Reply

Marsh Posté le 30-09-2006 à 09:48:59    

L'utilisateur Root n'a pas de mot de passe. Pour l'autre ca me met le message d'erreur que j'ai mis dans le "or die"  
mysql_connect("localhost","root","" ) or die ("connexion impossible" );

Reply

Marsh Posté le 30-09-2006 à 13:48:20    

marc90 > Ca ne te dirais pas d'afficher le message d'erreur renvoyé par mysql plustôt qu'un message bateau qu n'explique rien?

Reply

Marsh Posté le 30-09-2006 à 14:16:55    

Voici la ligne de connexion
$id = mysql_connect("localhost","nom","mdp" ) or die ("connexion impossible" );
Comme la connexion ne peut être établie ca retourne le message d'erreur de die.
 
On dirait que seul l'utilisateur root peut se connecter au serveur mysql

Reply

Marsh Posté le 30-09-2006 à 14:49:16    

echo mysql_error() STP

Reply

Marsh Posté le 30-09-2006 à 15:04:19    

Access denied for user 'nom'@'localhost' (using password: YES)

Reply

Marsh Posté le 30-09-2006 à 16:00:19    

rassure moi. Dans la base de donnée, le mot de passe est bien crypté.
S'il est en clair, alors il ne faut pas chercher plus loin (soit t'utilise les requettes dédiés de mysql, soit tu changes le mot de passe avec la fonction "password()" et tu demande ensuite à prendre en compte le changement : requette "flush privileges" )

Reply

Marsh Posté le 30-09-2006 à 16:16:36    

Dac le problème est là, le mot de passe est en clair dans la base, j'utilise phpMyAdmin. Même pas penser à ca. Merci

Reply

Marsh Posté le 30-09-2006 à 18:31:32    

marc90 a écrit :

Dac le problème est là, le mot de passe est en clair dans la base, j'utilise phpMyAdmin. Même pas penser à ca. Merci


 :pt1cable:  
Tellement évident qu'on y pense pas  :D

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed