Avec CREATE USER, de nouveaux comptes peuvent être créés dans MariaDB. Si vous souhaitez ajouter un nouvel uti­li­sa­teur, vous devez disposer de droits d’ad­mi­nis­tra­tion. Vous dé­fi­nis­sez les droits d’uti­li­sa­teur pour le compte avec GRANT.

CREATE USER dans MariaDB : les dif­fé­rentes étapes

L’ins­truc­tion CREATE USER est utilisée dans MariaDB pour la création d’un nouvel uti­li­sa­teur. Nous vous montrons ici les dif­fé­rentes étapes de la procédure.

Étape 1 : se connecter à MariaDB

Le nouvel uti­li­sa­teur est créé di­rec­te­ment dans MariaDB. Pour établir une connexion, utilisez la ligne de commande de MariaDB et connectez-vous avec votre nom d’uti­li­sa­teur et mot de passe. Il est important que le compte concerné dispose des droits d’ad­mi­nis­tra­teur.

Étape 2 : appliquer CREATE USER

Utilisez main­te­nant CREATE USER pour créer un nouvel uti­li­sa­teur dans MariaDB. La syntaxe de l’ins­truc­tion cor­res­pon­dante est la suivante :

CREATE USER nom_utilisateur@nom_hôte IDENTIFIED BY 'mot_de_passe';
sql

Au lieu du caractère de rem­pla­ce­ment « nom_uti­li­sa­teur », insérez le nom d’uti­li­sa­teur souhaité. Celui-ci doit être unique dans l’en­vi­ron­ne­ment du serveur. Remplacez « nom_hôte » par le nom d’hôte cor­res­pon­dant ou l’adresse IP de votre serveur et en dernière position, le mot de passe sécurisé pour ce compte.

Étape 3 : définir les droits de l’uti­li­sa­teur

Dans l’étape suivante, vous dotez le nouvel uti­li­sa­teur des droits d’uti­li­sa­teur né­ces­saires. Ceux-ci dé­fi­nis­sent ce qu’un uti­li­sa­teur peut faire sur le système. Vous trouverez ci-dessous une ex­pli­ca­tion plus détaillée sur les droits d’uti­li­sa­teur. L’ins­truc­tion GRANT est utilisée pour l’at­tri­bu­tion des droits. Voici sa syntaxe :

GRANT droits_utilisateur ON base_de_données.table TO nom_utilisateur@nom_hôte;
sql

Après l’ins­truc­tion GRANT, vous listez les droits que le compte cor­res­pon­dant doit recevoir. Ceux-ci sont séparés par des virgules. « base_de_données.table » peut par exemple concerner une base de données par­ti­cu­lière ou des tables in­di­vi­duelles, ou s’appliquer à l’ensemble du système avec *.*. Au lieu du caractère générique « nom_uti­li­sa­teur@nom_hôte », utilisez le nom d’uti­li­sa­teur et le nom d’hôte du nouvel uti­li­sa­teur.

Étape 4 : établir les droits de l’uti­li­sa­teur

Après avoir attribué les droits d’uti­li­sa­teur, utilisez l’ins­truc­tion FLUSH PRIVILEGES pour les appliquer di­rec­te­ment. L’ins­truc­tion ressemble à ceci :

FLUSH PRIVILEGES;
sql

Étape 5 : se connecter

Le nouvel uti­li­sa­teur peut main­te­nant se connecter au serveur MariaDB. Pour cela, il n’a besoin que de son nom d’uti­li­sa­teur et du mot de passe en­re­gis­tré. Il dispose main­te­nant des droits d’uti­li­sa­teur définis. Pour supprimer un compte en tant qu’ad­mi­nis­tra­teur, vous pouvez utiliser DROP USER.

Managed Ku­ber­netes de IONOS Cloud
Or­ches­trez vos charges de travail en toute sécurité

Managed Ku­ber­netes est la pla­te­forme idéale pour des ap­pli­ca­tions de con­te­neurs per­for­mantes et hautement évo­lu­tives.

Attribuer des droits d’uti­li­sa­teur

Les droits d’uti­li­sa­teur (ou pri­vi­leges en anglais) dé­ter­mi­nent les actions qui peuvent être ef­fec­tuées avec un compte dans MariaDB. Alors que l’uti­li­sa­teur admin dispose de tous les droits, les droits d’uti­li­sa­teur pour les autres comptes doivent être limités, sinon des problèmes de sécurité peuvent survenir. Les droits d’uti­li­sa­teur les plus courants sont les suivants :

  • ALL : donne au compte tous les droits sauf GRANT OPTION.
  • GRANT OPTION : donne au compte les droits de votre compte.
  • SELECT : le compte peut accéder aux bases de données ou aux tables.
  • INSERT : le compte peut ajouter de nouvelles lignes dans une table.
  • UPDATE : les lignes peuvent être ac­tua­li­sées.
  • DELETE : les lignes peuvent être sup­pri­mées.
  • CREATE : de nouvelles tables ou bases de données peuvent être créées.
  • ALTER : peut modifier la structure d’une table.
  • DROP : peut supprimer des tables ou des bases de données.

Si vous souhaitez modifier ul­té­rieu­re­ment les droits d’uti­li­sa­teur, utilisez l’ins­truc­tion REVOKE. Pour avoir un aperçu des droits accordés, utilisez la commande SHOW GRANTS FOR.

OR REPLACE et IF NOT EXISTS

Si vous voulez créer un nouveau compte dans MariaDB avec CREATE USER et qu’il existe déjà un uti­li­sa­teur avec le même nom, vous recevez un message d’erreur. Pour con­tour­ner ce problème, le système de gestion de base de données vous propose deux options : OR REPLACE et IF NOT EXISTS.

La syntaxe de OR REPLACE se présente comme suit :

CREATE OR REPLACE USER nom_utilisateur@nom_hôte IDENTIFIED BY 'mot_de_passe';
sql

Il s’agit d’une forme abrégée de ce code :

DROP USER IF EXISTS nom_utilisateur@nom_hôte;
CREATE USER nom_d'utilisateur@nom_d'hôte IDENTIFIED BY 'mot_de_passe';
sql

Le système vérifie donc s’il existe déjà un uti­li­sa­teur avec le nom cor­res­pon­dant. Si c’est le cas, l’ancien compte est remplacé par le nouveau. S’il n’y a pas encore d’uti­li­sa­teur cor­res­pon­dant, celui-ci est créé.

La syntaxe de IF NOT EXISTS est la suivante :

CREATE USER IF NOT EXISTS nom_utilisateur@nom_hôte IDENTIFIED BY 'mot_de_passe';
sql

Ici aussi, le système vérifie s’il existe déjà un compte avec le nom cor­res­pon­dant. Si c’est le cas, vous recevez un message d’aver­tis­se­ment et aucun compte n’est écrasé. S’il n’existe pas encore d’uti­li­sa­teur de ce type, le système crée un nouvel uti­li­sa­teur.

Conseil

Dans notre Digital Guide, vous en ap­pren­drez encore plus sur le système de gestion de base de données open source. Nous vous ex­pli­quons notamment comment fonc­tion­nent les commandes MariaDB CREATE DATABASE et MariaDB CREATE TABLE, quelles sont les dif­fé­rences et si­mi­li­tudes entre MariaDB et MySQL et comment procéder à l’ins­tal­la­tion de MariaDB.

Aller au menu principal