Importation à l'aide de l'interpréteur de commandes MySQL

Utilisez l'interpréteur de commandes MySQL dans l'instance de calcul Oracle Cloud Infrastructure pour importer des données dans un système de base de données de service HeatWave.

Note

Pour accélérer l'importation vers un système de base de données autonome, désactivez la récupération après incident ou utilisez la fonction d'importation de données. Voir Activation ou désactivation de la récupération après incident et Importation à l'aide de la fonction d'importation de données.
Cette tâche nécessite les éléments suivants :
  • Accès SSH à une instance de calcul avec accès au système de base de données MySQL, vous permettant d'exécuter l'interpréteur de commandes MySQL sur l'instance de calcul. Voir Réseau.
  • Interpréteur de commandes MySQL version 8.0.27 ou ultérieure.
  • Fichier de configuration valide si les fichiers de vidage sont stockés dans un seau de stockage d'objets. Si vous avez installé et configuré l'interface de ligne de commande dans l'emplacement par défaut, vous disposez d'un fichier de configuration valide. Si vous n'avez pas installé et configuré l'interface de ligne de commande, vous devez l'installer ou créer un fichier de configuration manuellement. Voir Fichier de configuration des trousses SDK et de l'interface de ligne de commande.
  • Stockage suffisant pour prendre en charge les données importées et bande passante réseau suffisante pour l'importation.
Pour importer des données vers un système de base de données MySQL :
  1. Exécutez l'interpréteur de commandes MySQL dans l'instance de calcul Oracle Cloud Infrastructure.
  2. Activez le type d'entrée JavaScript en entrant \js et en appuyant sur Entrée.
  3. Exécutez la commande suivante pour démarrer une session globale en vous connectant au point d'extrémité du système de base de données :
    \c <UserName>@<DBSystemEndpointIPAddress>
    • \c : Spécifie la commande de l'interpréteur de commandes permettant d'établir une nouvelle connexion.
    • <UserName> : Spécifie le nom d'utilisateur du système de base de données.
    • <DBSystemEndpointIPAddress> : Spécifie l'adresse IP du point d'extrémité du système de base de données.
  4. Si vous importez un vidage situé dans le système de fichiers local de l'instance de calcul Oracle Cloud Infrastructure, exécutez la commande suivante pour importer des données dans le système de base de données du service HeatWave :
    util.loadDump("<URL>", {waitDumpTimeout: <TimeinSeconds> , updateGtidSet: "append" })
    • util.loadDump : Spécifie la commande d'importation de données dans le système de base de données.
    • <URL> : Spécifie le chemin d'accès à un répertoire local contenant les fichiers de vidage. Par exemple, /home/opc/dump.
    • waitDumpTimeout : (Facultatif) Permet d'appliquer un vidage qui est toujours en cours de création. Les tables sont chargées au fur et à mesure de leur disponibilité, et l'utilitaire attend le nombre de secondes spécifié après l'arrivée de nouvelles données à l'emplacement de vidage. Lorsque la temporisation expire, l'utilitaire abandonne l'importation.
    • updateGtidSet:"append" : (Facultatif) Ajoute les ID transaction du jeu de GTID gtid_executed enregistré dans les métadonnées du vidage au jeu de GTID gtid_purged du système de base de données. Cela configure le jeu de GTID dans le système de base de données pour activer la réplication entrante à partir de l'instance MySQL à partir de laquelle les fichiers de vidage sont exportés.
  5. Si vous importez un vidage à partir d'un seau Oracle Cloud Infrastructure Object Storage, exécutez la commande suivante pour importer des données dans le système de base de données du service HeatWave :
    util.loadDump("<URL>", {threads: <Number>, osBucketName: "<MDSBucket>", waitDumpTimeout: <TimeinSeconds> , updateGtidSet: "append" })
    • util.loadDump : Spécifie la commande d'importation de données dans le système de base de données.
    • <URL> : Spécifie le préfixe de chemin que les fichiers de vidage ont dans le seau, qui a été affecté à l'aide du paramètre outputUrl lors de la création du vidage.
    • threads : (Facultatif) Spécifie le nombre d'unités d'exécution parallèles à utiliser pour charger des fragments de données dans le système de base de données. La valeur par défaut est 4.
    • osBucketName : Spécifie le nom du seau de stockage d'objets.
    • waitDumpTimeout : (Facultatif) Permet d'appliquer un vidage qui est toujours en cours de création. Les tables sont chargées au fur et à mesure de leur disponibilité, et l'utilitaire attend le nombre de secondes spécifié après l'arrivée de nouvelles données à l'emplacement de vidage. Lorsque la temporisation expire, l'utilitaire abandonne l'importation.
    • updateGtidSet:"append" : (Facultatif) Ajoute les ID transaction du jeu de GTID gtid_executed enregistré dans les métadonnées du vidage au jeu de GTID gtid_purged du système de base de données. Cela configure le jeu de GTID dans le système de base de données pour activer la réplication entrante à partir de l'instance MySQL à partir de laquelle les fichiers de vidage sont exportés.
  6. (Facultatif) Si vous n'avez pas spécifié l'option updateGtidSet:"append" dans la commande util.loadDump, vous pouvez effectuer les opérations suivantes pour mettre à jour le jeu de GTID gtid_purged du système de base de données :
    1. Récupérez la valeur de gtid_executed à partir du fichier de vidage @.json.
    1. Connectez-vous au système de base de données et ajoutez le jeu de GTID à gtid_purged à l'aide de la commande suivante :
      CALL sys.SET_GTID_PURGED("+<gtidSet>")
      Cette commande exécute une procédure stockée sur le système de base de données pour modifier la valeur de la variable de système.
      • <gtidSet> est la valeur du champ gtidExecuted dans le fichier de vidage @.json.
      • Le signe + ajoute le jeu de GTID à la variable de système gtid_purged du système de base de données.
Les données sont importées dans le système de base de données.