Création d'un utilisateur demandeur sur un système de base de données cible

L'utilisateur du demandeur est un compte d'utilisateur qui réside dans le serveur de répliques et fournit un contexte de sécurité pour un canal de réplication MySQL. Le compte doit avoir le privilège REPLICATION_APPLIER, plus tous les privilèges requis pour exécuter les transactions répliquées sur le canal.

La réplication entrante HeatWave nécessite un utilisateur qui utilise par défaut le compte d'administrateur du système de base de données. Si vous avez besoin d'un jeu de privilèges plus restrictif pour l'utilisateur applicateur, vous pouvez créer un compte utilisateur distinct, accorder tous les privilèges requis au compte et spécifier le compte en tant qu'utilisateur applicateur lorsque vous créez le canal.

Utilisation d'un client de ligne de commande

Utilisez un client de ligne de commande tel que l'interpréteur de commandes MySQL ou le client MySQL pour créer un utilisateur applicateur avec les privilèges requis sur le système de base de données cible.

Cette tâche nécessite les éléments suivants :
  • MySQL Shell 8.0.27 ou supérieur, ou un client MySQL.
Effectuez les opérations suivantes pour ajouter un utilisateur demandeur au système de base de données cible :
  1. Ouvrez l'interpréteur de commandes MySQL et connectez-vous au système de base de données cible.
  2. Exécutez la commande suivante en mode d'exécution SQL pour créer un utilisateur demandeur. Dans cet exemple, le nom d'utilisateur de l'utilisateur du demandeur est appluser :
    CREATE USER appluser@'%' IDENTIFIED BY 'password' REQUIRE SSL;
    Le mot de passe doit comporter entre 8 et 32 caractères et contenir au moins un caractère numérique, un caractère spécial, une majuscule et une minuscule. Si le nom d'utilisateur contient des caractères spéciaux, tels qu'une espace ou un tiret, il doit également être entouré de guillemets, par exemple :
    CREATE USER 'appl-user'@'%' IDENTIFIED BY 'password' REQUIRE SSL;
  3. Exécutez la commande suivante pour accorder le privilège REPLICATION_APPLIER au nouvel utilisateur du demandeur, appluser dans cet exemple :
    GRANT REPLICATION_APPLIER ON *.* TO appluser@'%';
  4. Exécutez une ou plusieurs commandes pour accorder tous les privilèges requis au nouvel utilisateur demandeur.
    • Dans cet exemple, le rôle administrator du système de base de données est accordé au compte d'utilisateur appluser :
      GRANT administrator TO appluser@'%';
      SET DEFAULT ROLE administrator TO appluser@'%';
    • Au lieu du rôle administrator, vous pouvez accorder un jeu de privilèges plus restrictif à l'utilisateur demandeur si vous voulez restreindre les énoncés SQL qui peuvent être répliqués vers le système de base de données. Par exemple, si vous utilisez un filtre de réplication pour répliquer un seul schéma, vous pouvez limiter les privilèges de l'utilisateur demandeur à un schéma avec GRANT ALL ON <schema_name>.* TO appluser@'%';
      Note

      Si l'utilisateur demandeur ne dispose pas des privilèges suffisants pour exécuter l'un des énoncés SQL répliqués, la réplication échoue avec une erreur. Vous devez déterminer si l'instruction doit être répliquée ou filtrée et si vous devez accorder d'autres privilèges à l'utilisateur demandeur. Vous devez résoudre le problème avant de reprendre la réplication en cas d'erreur.

L'utilisateur du demandeur est créé et octroyé avec les privilèges requis.