IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
logo

FAQ MySQLConsultez toutes les FAQ

Nombre d'auteurs : 15, nombre de questions : 155, derni�re mise � jour : 22 avril 2014  Ajouter une question

 

Cette FAQ a �t� con�ue � partir des questions fr�quemment pos�es sur le forum MySQL de Developpez.com. Elle ne pr�tend pas � �tre exhaustive et peut contenir des erreurs occasionnelles. Si vous relevez une coquille, n'h�sitez pas � nous le faire savoir.

Pour participer � cette FAQ, veuillez envoyer vos r�ponses sur le forum.

SommaireAdministrationUtilisateurs et privil�ges (13)
pr�c�dent sommaire suivant
 

M�thode 1 : Avec CREATE USER.

Code sql : S�lectionner tout
1
2
3
4
5
-- avec mot de passe 
CREATE USER toto@'192.168.%' IDENTIFIED BY 'tata' ; 
  
-- sans mot de passe 
CREATE USER toto@'192.168.%' ;
La commande CREATE USER n'existe qu'� partir de la version 5.0.2. Pour les versions ant�rieures, il faut utiliser l'une des deux autres m�thodes.

M�thode 2 : En faisant directement un GRANT � un utilisateur encore inexistant.

Code sql : S�lectionner tout
1
2
-- mot de passe obligatoire si l'utilisateur doit �tre cr�� 
GRANT SELECT, INSERT, UPDATE ON mabase.matable TO toto@'192.168.%' IDENTIFIED BY 'tata' ;
M�thode 3 : Manipuler les tables des droits (user, db, tables_priv) dans la base mysql. Voir la doc MySQL : http://dev.mysql.com/doc/refman/5.0/...ing-users.html. Cette m�thode est risqu�e car une erreur peut bloquer votre acc�s � MySQL (sauvegardez votre base avant !). N'oubliez pas le FLUSH PRIVILEGES � la fin (voir Qu'est-ce que la base mysql).

Mis � jour le 16 juin 2004 Alexandre T Antoun

Dans les requ�tes DCL* de MySQL, les comptes s'�crivent username@host. Le username et le host peuvent s'�crire entre apostrophes ou non. Les quatre �critures suivantes sont donc synonymes : toto@localhost, 'toto'@localhost, toto@'localhost', 'toto'@'localhost'. Les apostrophes sont obligatoires si le mot contient un caract�re sp�cial. Pour l'h�te, c'est notamment le cas des jokers ou du / pr�c�dant un masque. De la m�me mani�re, l'utilisateur anonyme s'�crit '' (deux apostrophes).

A l'inverse, si vous manipulez directement les donn�es de la base mysql sans passer par le DCL, user et host doivent �tre consid�r�s comme deux colonnes VARCHAR s�par�es. L'�criture username@host ne sera donc pas reconnue.

*Le Data Control Language est la sous-partie du SQL comprennant les commandes SQL relatives aux utilisateurs et � leurs privil�ges : GRANT, REVOKE, CREATE USER, RENAME USER et DROP USER.

Mis � jour le 31 ao�t 2008 Antoun

MySQL accepte les comptes sans mot de passe. L'utilisateur devra alors �viter de saisir un mot de passe � l'authentification. Tenter de se connecter avec un mot de passe sur un compte sans mot de passe entra�ne un rejet.

Cr�er des comptes sans mot de passe est �videmment d�conseill� pour des raisons de s�curit�.

Mis � jour le 31 ao�t 2008 Antoun

Avec MySQL 5.0, la proc�dure � suivre (sous les syst�mes d'exploitation Windows et Unix) est d�crite dans la documentation officielle (en fran�ais).

Avec MySQL 5.1, la proc�dure � suivre diff�re l�g�rement (sous les syst�mes d'exploitation Windows et Unix) et est d�crite dans la documentation officielle (en anglais).

Avec MySQL 5.5, la proc�dure � suivre (sous les syst�mes d'exploitation Windows et Unix) est d�crite dans la documentation officielle (en anglais).

Mis � jour le 22 avril 2014 ced

Si le mot de passe n'a jamais �t� configur�, lancez la commande suivante dans un terminal :

Code sql : S�lectionner tout
mysqladmin -u root password MOT_DE_PASSE
Si le mot de passe a d�j� �t� d�fini, lancez la commande suivante dans un terminal :

Code sql : S�lectionner tout
mysqladmin -u root -p ANCIEN_MOT NOUVEAU_MOT

Mis � jour le 9 octobre 2010 ced

Les commandes GRANT et REVOKE permettent aux administrateurs de la base de donn�es de rajouter ou supprimer des utilisateurs et de leur donner ou de leur retirer des droits. Vous pouvez �tre tr�s pr�cis dans l'attribution de ces droits.

http://dev.mysql.com/doc/refman/5.0/fr/grant.html

Mis � jour le 16 juin 2004 Alexandre T

Voici la liste des privil�ges telles qu'elle est fournie par le manuel de r�f�rence de la version 4.0.3.

  • ALL [PRIVILEGES] Autorise tous les privil�ges simple, sans pouvoir les transmettre ("WITH GRANT OPTION" n'est pas inclus)
  • ALTER Autorise l'usage de ALTER TABLE
  • CREATE Autorise l'usage de CREATE TABLE
  • CREATE TEMPORARY TABLES Autorise l'usage de CREATE TEMPORARY TABLE
  • DELETE Autorise l'usage de DELETE
  • DROP Autorise l'usage de DROP TABLE.
  • EXECUTE Autorise l'utilisateur � �x�cuter des proc�dures stock�es (pour MySQL 5.0)
  • FILE Autorise l'usage de SELECT ... INTO OUTFILE et LOAD DATA INFILE
  • INDEX Autorise l'usage de of CREATE INDEX et DROP INDEX
  • INSERT Autorise l'usage de INSERT
  • LOCK TABLES Autorise l'usage de LOCK TABLES sur les tables o� le privil�ge SELECT est d�tenu
  • PROCESS Autorise l'usage de SHOW FULL PROCESSLIST
  • REFERENCES Pour les versions futures
  • RELOAD Autorise l'usage de FLUSH
  • REPLICATION CLIENT Donne le droit � l'utilisateur de demander o� sont les maitres/esclaves.
  • REPLICATION SLAVE N�cessaire pour les esclaves de r�plication (pour lire les journaux binaires depuis les maitre).
  • SELECT Autorise l'usage de SELECT
  • SHOW DATABASES Autorise l'usage de SHOW DATABASES pour montrer toutes les bases
  • SHUTDOWN Autorise l'usage de l'arr�t par mysqladmin
  • SUPER Autorise une connexion (une seule fois) m�me si le nombre maximum de connexions est atteint, ainsi que l'usage de CHANGE MASTER, KILL processus,debugage par mysqladmin, PURGE MASTER LOGS et SET GLOBAL
  • UPDATE Autorise l'usage de UPDATE
  • USAGE Synonyme pour aucun privil�ges

Les privil�ges CREATE TEMPORARY TABLES, EXECUTE, LOCK TABLES, REPLICATION ..., SHOW DATABASES et SUPER existent � partir de la version 4.0.2. Pour utiliser ces nouveaux privil�ges apr�s une mise � jour, vous devez ex�cuter le script mysql_fix_privilege_table.

Dans les versions ant�rieures de MySQL, le privil�ge PROCESS donne les m�mes droits que le nouveau privil�ge SUPER.

Mis � jour le 16 juin 2004

Vous pouvez pr�ciser le nombre de requ�tes maximal, le nombre de mises � jour maximal et surtout le nombre de connexions maximal (le tout en nombre par heure).

Code sql : S�lectionner tout
1
2
3
GRANT ... WITH MAX_QUERIES_PER_HOUR N1  
MAX_UPDATES_PER_HOUR N2  
MAX_CONNECTIONS_PER_HOUR N3;
http://dev.mysql.com/doc/mysql/fr/User_resources.html

Mis � jour le 16 juin 2004 Alexandre T

MySQL permet de cr�er des comptes sans username (et �ventuellement sans mot de passe non plus).

Code sql : S�lectionner tout
CREATE USER ''@'%' IDENTIFIED BY 'omnibus' ;
L'utilisateur peut alors fournir n'importe quel nom, ou m�me ne pas en donner du tout.

Du point de vue de la s�curit�, la cr�ation de comptes anonymes est �videmment fortement d�conseill�e.

La pr�sence d'un compte anonyme li� � un h�te sp�cifique peut �galement bloquer tous les utilisateurs dont le compte est li� � un h�te moins sp�cifique. Supposons par exemple que vous utilisiez habituellement le compte toto@'%'. L'administrateur d�cide de cr�er un compte anonyme ouvert � tout le r�seau local, soit ''@'192.168.%'. A votre prochaine connexion depuis un poste en 192.168, MySQL vous identifiera comme ''@'192.168.%'. En effet, '' est moins sp�cifique que 'toto', mais 192.168.% est plus sp�cifique que % tout court ; comme il accorde la priorit� � la sp�cificit� de l'h�te, MySQL pr�f�re un compte anonyme li� � un h�te sp�cifique qu'un compte nomm� li� � un h�te g�n�rique. Au final, votre tentative de connexion sera refus�e pour mauvais mot de passe (� moins bien s�r que vous n'ayez le m�me mot de passe que ''@'192.168.%').

Mis � jour le 31 ao�t 2008 Antoun

Un serveur MySQL comprend toujours deux bases de donn�es syst�me : information_schema, qui contient les vues syst�me du catalogue (cf le tutoriel Le catalogue MySQL), et mysql, qui contient les comptes utilisateur et leurs privil�ges. Les principales tables de cette base sont user (comptes, mot de passe et privil�ges globaux), db (privil�ges accord�s pour une base de donn�es enti�re), tables_priv (privil�ges accord�s table par table) et column_priv (privil�ges accord�s colonne par colonne). Il est possible d'administrer les utilisateurs en modifiant les donn�es de la base mysql. Comme le contenu de cette base est int�gralement charg� en m�moire au d�marrage du serveur, il sera n�cessaire de le recharger avec un FLUSH PRIVILEGES. A l'inverse, le FLUSH n'est pas n�cessaire avec les ordres DCL (GRANT, REVOKE, etc.) qui impactent automatiquement la copie en m�moire vive de la base mysql.

Mis � jour le 31 ao�t 2008 Antoun

Les privil�ges accord�s au niveau base de donn�es peuvent �tre conditionn�s � l'h�te de l'utilisateur. Pour cela, vous devez manipuler directement la base mysql. Il faut indiquer '' (cha�ne vide) dans la colonne host de la table db, ce qui signifie "selon la table host". Dans la colonne host de la table host, vous placez les h�tes autoris�s pour la db en question, avec leurs privil�ges. Pour plus de d�tails : http://dev.mysql.com/doc/refman/5.0/...st-access.html.

Mis � jour le 31 ao�t 2008 Antoun

Les modifications au niveau des objets de base de donn�es (tables, colonnes, etc.) prennent effet � la prochaine requ�te de l'utilisateur. Les modifications au niveau base de donn�es prennent effet au prochain changement de base de donn�es courante (USE) de l'utilisateur. Les modifications au niveau global prennent effet � la prochaine connexion.

Mis � jour le 31 ao�t 2008 Antoun

Non, MySQL n'impl�mente toujours pas cette gestion des comptes par groupe et r�les.
Cette gestion ne semble pas �tre une priorit� pour les d�veloppeurs de MySQL.
Son impl�mentation n'est d'ailleurs pas non plus pr�vue pour MySQL 6.

Mis � jour le 28 d�cembre 2008 Alain Defrance

Proposer une nouvelle r�ponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plut�t sur le forum de la rubrique pour �a


R�ponse � la question

Liens sous la question
pr�c�dent sommaire suivant
 

Les sources pr�sent�es sur cette page sont libres de droits et vous pouvez les utiliser � votre convenance. Par contre, la page de pr�sentation constitue une �uvre intellectuelle prot�g�e par les droits d'auteur. Copyright � 2025 Developpez Developpez LLC. Tous droits r�serv�s Developpez LLC. Aucune reproduction, m�me partielle, ne peut �tre faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'� trois ans de prison et jusqu'� 300 000 � de dommages et int�r�ts.