Création d'un canal de réplication

Pour la réplication entrante, un canal de réplication connecte la source (une instance MySQL ou un autre système de base de données) à la réplique (un système de base de données) et copie les données de la source vers la réplique.

Utilisation de la console

Utilisez la console pour créer un canal de réplication sur une réplique de système de base de données.

Cette tâche nécessite les éléments suivants :
Pour créer un canal de réplication, procédez comme suit :
  1. Ouvrez le menu de navigation et sélectionnez Bases de données. Sous HeatWave MySQL, effectuez l'une des opérations suivantes :
    • Cliquez sur Canaux et cliquez sur Créer un canal.
    • Cliquez sur systèmes de base de données et, dans la liste des systèmes, cliquez sur le nom de votre système. Cliquez sur Actions supplémentaires et sélectionnez Créer un canal.
    • Cliquez sur le menu Actions présent sur la même ligne que votre système de base de données et sélectionnez Créer un canal.
  2. Dans le panneau Créer un canal, entrez les informations suivantes :
    • Créer dans le compartiment : Si vous voulez créer le canal dans un compartiment autre que le compartiment courant, sélectionnez le compartiment voulu dans la liste. Si vous ne sélectionnez pas d'autre compartiment, le compartiment courant est utilisé.
    • Nom : (Facultatif) Spécifiez un nom d'affichage convivial pour le canal. Ce nom n'est pas lié au nom du canal défini dans la définition du système de BD cible. Il sert uniquement à étiqueter le canal. Si vous n'indiquez pas de nom, un nom est généré pour vous au format mysqlchannelYYYYMMDDHHMMSS.
    • Activation automatique à la création : Spécifiez si le canal démarre automatiquement après sa création. Il est activé par défaut. Si vous désactivez cette option, vous devrez activer le canal manuellement.
    • Description : (Facultatif) Spécifiez une description conviviale du canal et de son objectif.
  3. La section Connexion source configure le serveur source MySQL à partir duquel vous voulez répliquer les données. Entrez les informations suivantes :
    • Nom d'hôte : Spécifiez le nom d'hôte de la source MySQL. Vous pouvez spécifier une adresse IP ou un nom de domaine complet.
    • Port de base de données : (Facultatif) Spécifiez le numéro de port sur lequel la source MySQL écoute. La valeur par défaut est 3306.
    • Nom d'utilisateur : Spécifiez le nom d'utilisateur de réplication pour le compte que vous avez créé sur le serveur source MySQL. Le canal de réplication utilise ces données d'identification pour se connecter à la source. Voir Création d'un utilisateur de réplication sur un serveur source.
    • Mot de passe et Confirmer le mot de passe : Spécifiez le mot de passe du compte d'utilisateur de réplication.
    • Mode SSL : Sélectionnez le mode SSL requis. Le mode sélectionné est utilisé pour alimenter les valeurs spécifiques SSL de la connexion à la source MySQL. Sélectionnez l'un des modes SSL suivants :
      • Désactivé (DISABLED) : Établit une connexion non chiffrée entre la source et la cible.
      • Obligatoire (REQUIRED) : (Par défaut) Si le serveur prend en charge la connexion chiffrée, établit une connexion chiffrée. La tentative de connexion échoue si une connexion chiffrée ne peut pas être établie.
      • Vérifier l'autorité de certificat (VERIFY_CA) : Comme le mode Requis, établit une connexion chiffrée si le serveur prend en charge les connexions chiffrées et vérifie en outre le certificat de l'autorité de certification configuré sur la source par rapport au certificat X509 (PEM) de l'autorité de certification. Vous devez charger le certificat X509 de votre autorité de certification.
      • Vérifier l'identité (VERIFY_IDENTITY) : Comme le mode Vérifier l'autorité de certification, établit une connexion chiffrée, vérifie le certificat de l'autorité de certification et vérifie en outre le nom d'hôte source, que vous définissez dans le certificat SSL source, par rapport au nom d'hôte que vous définissez dans le champ Nom d'hôte. Vous devez charger le certificat X509 de votre autorité de certification.
      • Certificat X509 de l'autorité de certification (PEM) : Permet de charger le certificat X509 de l'autorité de certification source dans le format PEM. S'affiche uniquement lorsque vous sélectionnez le mode Vérifier l'autorité de certificat ou Vérifier l'identité. Le certificat est utilisé pour vérifier le certificat de l'autorité de certification dans la source.
    • Positionnement de la réplication : Configurez les paramètres du GTID source :
      • La source peut utiliser le positionnement automatique des GTID (recommandé) : Sélectionnez cette option lorsque la variable de système gtid_mode est réglée à ON dans la source. Cela signifie que le serveur source peut fournir à la réplique des informations sur le GTID pour le positionnement automatique. Voir GTID.
      • La source ne peut pas utiliser le positionnement automatique de GTID : Sélectionnez cette option lorsque la variable de système gtid_mode est réglée à OFF,OFF_PERMISSIVE ou à ON_PERMISSIVE dans la source. Cela signifie que le serveur source ne peut pas fournir à la réplique les informations sur le GTID pour le positionnement automatique. Spécifiez les options suivantes pour convertir une transaction anonyme en une transaction ayant des GTID :
        Note

        Vous ne pouvez sélectionner cette option que pour les systèmes de base de données autonomes. Vous ne pouvez pas utiliser cette option pour les systèmes de base de données à haute disponibilité.
        • Indiquer manuellement un UUID : Sélectionnez cette option pour générer un nouvel UUID ou entrez votre propre UUID. Voir la section UUID dans GTIDs.
        • Même UUID que le système de base de données cible : Sélectionnez cette option pour utiliser le même UUID que celui du système de base de données cible.
        Spécifiez les éléments suivants :
        • Nom du fichier journal binaire : Spécifiez le nom du fichier journal binaire qui contient les événements décrivant les modifications de la base de données. Voir Journal binaire.
        • Binary log offset : Spécifiez le décalage du journal binaire dans le fichier journal binaire.
  4. La section Système de base de données cible configure le système de base de données vers lequel vous voulez répliquer les données. Entrez les informations suivantes :
    • Nom d'utilisateur du demandeur : (Facultatif) Spécifiez le nom d'utilisateur du demandeur sur le système de base de données cible. Si vous ne spécifiez pas de nom d'utilisateur, le compte d'administrateur du système de base de données est utilisé. Voir Création d'un utilisateur demandeur sur un système de base de données cible.
      Note

      Si spécifié, le compte d'utilisateur doit exister dans le système de base de données cible. Le compte d'utilisateur doit également contenir le privilège et les privilèges REPLICATION_APPLIER pour exécuter les transactions répliquées.
    • Nom du canal : Spécifiez le nom du canal de réplication. Le système de base de données cible utilise le canal de réplication pour communiquer avec la source MySQL. Si vous n'indiquez pas de nom, replication_channel est utilisé.
    • Tables sans clé primaire : (Facultatif) Spécifiez comment un canal de réplication traite la création et la modification des tables sans clé primaire.
      • Émettre une erreur (RAISE_ERROR) : Émettez une erreur lors de la réplication d'une transaction CREATE TABLE ou ALTER TABLE sans clé primaire.
      • Autoriser (ALLOW) : (Par défaut) Permet la réplication d'une transaction CREATE TABLE ou ALTER TABLE sans clé primaire.
      • Générer la clé primaire (GENERATE_IMPLICIT_PRIMARY_KEY) : Générez une colonne de clé primaire invisible lors de la réplication d'énoncés CREATE TABLE ou ALTER TABLE sur des tables InnoDB sans clé primaire.
    • Délai de réplication : Définissez le temps, en secondes, pendant lequel le canal attend avant d'appliquer une transaction reçue de la source.
    • Système de base de données cible : Sélectionnez le système de base de données à utiliser comme cible de réplication. Si vous créez le canal à partir de la page Détails du système de base de données ou du menu d'actions, le système de base de données cible est automatiquement sélectionné et vous ne pouvez pas le modifier. Vous pouvez voir le système de base de données cible en haut de la page.
    • Filtres de canal : (Facultatif) Cliquez sur Afficher les options de filtre de canal pour configurer le type et la valeur des filtres de réplication pour le canal. Voir Règles de filtre de canal.
      • Modèles de filtre communs : Sélectionnez un modèle de filtre dans la liste disponible pour correspondre à la source. Vous pouvez utiliser des modèles de filtre existants qui alimentent le type et la valeur.
      • Type : Sélectionnez le type de filtre. Vous pouvez sélectionner différents types de filtre, par exemple ignorer une base de données ou une table, et réécrire une base de données.
      • Valeur : Indiquez une valeur pour le type de filtre. Vous pouvez alimenter la valeur en sélectionnant un modèle de filtre commun ou en entrant une nouvelle valeur.
  5. (Facultatif) Pour enregistrer la configuration de ressources en tant que pile, cliquez sur Enregistrer en tant que pile. Vous pouvez ensuite utiliser la pile pour installer, configurer et gérer les ressources au moyen du service du gestionnaire de ressources. Voir Gestion des piles.
  6. Pour créer le canal, cliquez sur Créer un canal.
    La création du canal commence et le canal passe à l'état Création. Le provisionnement peut prendre plusieurs minutes. Le canal ne réplique pas les données de la source vers la cible lorsqu'il est dans cet état.

Si vous avez laissé la case Activé automatiquement lors de la création cochée, dès que le canal a été créé avec succès, il passe à l'état Actif et commence la réplication des données de la source vers la cible.

Si vous désélectionnez la case, le canal passe à l'état Inactif. Dans ce cas, lorsque vous êtes prêt pour que le canal commence à répliquer des données, activez-le en suivant les étapes sous Activation ou désactivation d'un canal.

Règles de filtre de canal

Configurez le type et la valeur des filtres de canal pour la réplication.

Chaque règle de filtre ne peut contenir qu'un seul type et une seule valeur de filtre. Toutefois, vous pouvez ajouter un nombre illimité de règles de filtre et le résultat est l'ajout de toutes les règles de filtre. Par exemple, si vous créez une règle de filtre avec le type, REPLICATE_DO_DB et la valeur de filtre, mysql1 et une autre règle de filtre, avec le type, REPLICATE_DO_DB et la valeur de filtre, mysql2, les bases de données mysql1 et mysql2 sont répliquées.

Tableau 13-1 : Règles de filtre de canal

Type de filtre Valeur du filtre Détails
REPLICATE_DO_DB database Réplique la base de données spécifiée.
REPLICATE_IGNORE_DB database Restreint la réplication de la base de données spécifiée.
REPLICATE_DO_TABLE database.table Réplique la table indiquée dans la base de données.
REPLICATE_IGNORE_TABLE database.table Restreint la réplication de la table indiquée dans la base de données.
REPLICATE_WILD_DO_TABLE database.table Réplique la table qui correspond au modèle générique spécifié.
REPLICATE_WILD_IGNORE_TABLE database.table Restreint la réplication de toute table qui correspond au modèle générique spécifié.
REPLICATE_REWRITE_DB from_database->to_database Convertit from_database dans la source en to_database.

Modèles de caractère générique

REPLICATE_WILD_DO_TABLE et REPLICATE_WILD_IGNORE_TABLE prennent en charge les caractères génériques. Les modèles de caractère générique peuvent contenir les caractères génériques % et _. % représente 0 caractère ou plus et _ représente un seul caractère. Par exemple :

  • Une valeur de filtre foo%.bar% dans le type de filtre REPLICATE_WILD_DO_TABLE réplique uniquement les tables où le nom de la base de données commence par foo et le nom de la table commence par bar.
  • Une valeur de filtre de foo%.% dans le type de filtre REPLICATE_WILD_DO_TABLE réplique toutes les tables dont le nom de base de données commence par foo.
  • La valeur de filtre foo_.bar_ dans le type de filtre REPLICATE_WILD_IGNORE_TABLE ignore les tables où le nom de la base de données contient quatre caractères et commence par foo et le nom de la table contient quatre caractères et commence par bar.

Si vous voulez utiliser des caractères génériques littéralement dans les noms de base de données ou de table dans REPLICATE_WILD_DO_TABLE ou REPLICATE_WILD_IGNORE_TABLE, évitez-les avec des barres obliques inverses (\). Par exemple, my\_db.top\_90\%.