Tous les produits
Search
Centre de documentation

Data Management:Modification standard des données

Dernière mise à jour :Sep 24, 2026

La fonctionnalité de modification standard des données dans Data Management Service (DMS) vous permet d'exécuter des instructions SQL pour modifier les données d'une base de données. Vous pouvez exécuter des instructions telles que INSERT, UPDATE, DELETE et TRUNCATE immédiatement ou selon une planification. Cette rubrique décrit comment soumettre un ticket de modification standard des données.

Aperçu de l'opération

  1. Configurer et soumettre un ticket de modification standard des données

    Sélectionnez la base de données ou l'instance que vous souhaitez modifier. Saisissez les instructions SQL pour la modification ou téléchargez une pièce jointe SQL.

  2. Pré-vérification

    Lors de la phase de pré-vérification, DMS vérifie les instructions SQL que vous avez soumises. Le service contrôle si le type SQL est valide pour une modification standard des données et si vous disposez des autorisations requises.

  3. Approuver le ticket

    Pendant la phase d'approbation, DMS vérifie si les instructions SQL auront un impact sur les performances de la base de données. Le service vérifie également si l'utilisateur qui a soumis le ticket est autorisé à exécuter les instructions SQL.

  4. Exécuter la modification des données

    Les instructions SQL soumises pour la modification sont exécutées. Si la modification est incorrecte ou si vous devez annuler les instructions SQL pour des raisons professionnelles, DMS vous permet de créer un ticket d'annulation. Cela vous aide à restaurer rapidement les données d'origine une fois la modification terminée.

Sélection de la stratégie

Lorsque vous effectuez une modification des données, vous pouvez choisir une méthode de modification en fonction de votre scénario professionnel :

  1. Vérifier l'effet avec une modification sans verrou en premier : Une modification sans verrou convient aux opérations SQL simples sur une seule table. Soumettez un ticket de modification sans verrou pour exécuter la défragmentation et vérifier le résultat.

  2. Passer à une modification standard des données si le résultat n'est pas conforme aux attentes : Si la modification sans verrou ne produit pas le résultat attendu, soumettez un ticket de modification standard des données pour effectuer la modification à la place.

Remarque

Une modification des données sans verrou prend uniquement en charge les opérations SQL simples sur une seule table. Pour des modifications plus complexes, utilisez directement une modification standard des données.

Prérequis

Le mode de contrôle de l'instance doit être Stable Change ou Security Collaboration. Pour plus d'informations, consultez Modes de contrôle.

Remarques

  • Vous pouvez fermer un ticket quel que soit son statut d'approbation. Cela évite l'exécution accidentelle d'une tâche après l'approbation du ticket.

  • Vous pouvez gérer les modifications des données dans l'environnement de staging à l'aide de tickets. Les tickets offrent des garanties telles que des sauvegardes de données et des vérifications du nombre de lignes. Si une opération ne produit pas le résultat attendu, vous pouvez restaurer rapidement les données.

    Remarque

    Si vous craignez que l'approbation des tickets n'affecte l'efficacité du développement, vous pouvez configurer des paramètres dispensés d'approbation. Pour plus d'informations, consultez Modification SQL.

  • Si vous avez configuré bases de données logiques, tables logiques et algorithmes de routage, vous pouvez soumettre un seul ticket pour les modifications de sharding. Il n'est pas nécessaire de soumettre des tickets distincts pour chaque base de données et table physique.

    • Si vous utilisez un algorithme de routage et que la condition de mise à jour inclut un champ de routage, l'instruction est automatiquement routée vers la base de données et la table physiques correctes pour l'exécution.

    • L'instruction SQL s'exécute sur chaque shard un par un dans les scénarios suivants, ce qui peut augmenter le temps d'exécution : aucun algorithme de routage n'est configuré, la condition de modification n'inclut pas de champ de routage, ou le type ou la définition de structure du champ de routage est incorrect.

  • DMS génère automatiquement une pièce jointe de script de sauvegarde uniquement avant d'exécuter les instructions UPDATE ou DELETE.

Procédure

Étape 1 : Configurer et soumettre le ticket

  1. Connectez-vous à DMS 5.0.

  2. Placez le pointeur sur l'icône 2023-01-28_15-57-17.png2023-01-28_15-57-17.png dans le coin supérieur gauche de la console DMS, puis sélectionnez All Features > Database Development > Data Change > Normal Data Modify.

    Remarque

    Si vous utilisez la console DMS en mode normal, sélectionnez Database Development > Data Change > Normal Data Modify dans la barre de navigation supérieure.

  3. Sur la page Demande de ticket de modification des données, configurez les paramètres du ticket. Le tableau suivant décrit certains des paramètres.

    Remarque
    • L'exemple suivant montre comment configurer les paramètres pour une instance en mode Security Collaboration. Les paramètres peuvent varier si vous sélectionnez une instance en mode Stable Change.

    • La fonctionnalité de modification des instances source de données est en cours de déploiement progressif.

    Élément de configuration

    Obligatoire

    Description

    Change Target

    Oui

    Vous pouvez sélectionner Database ou Data Source Instance.

    Remarque

    Actuellement, vous ne pouvez sélectionner que des instances MySQL des types suivants pour les modifications d'instance source de données : RDS MySQL, PolarDB for MySQL et AnalyticDB for MySQL.

    Database ou Data Source Instance

    Oui

    Recherchez et sélectionnez une base de données ou une instance pour laquelle vous disposez des autorisations de modification.

    Remarque

    Actuellement, vous ne pouvez sélectionner qu'une seule instance pour une modification d'instance source de données.

    Reason Category

    Oui

    Sélectionnez une raison pour la modification des données afin de faciliter sa recherche ultérieure.

    Remarque

    Les administrateurs peuvent configurer la liste des catégories de raisons dans la section Operations Management > Configuration Management. Pour plus d'informations, consultez Gestion de la configuration.

    Business Background

    Oui

    Fournissez une description détaillée de la raison ou de l'objectif de la modification afin de réduire la charge de communication.

    Execution Method

    Oui

    Sélectionnez une méthode d'exécution pour le ticket :

    • Après approbation, le demandeur exécute l'opération.

    • Exécution automatique après approbation.

    • Exécution par le dernier approbateur.

    Remarque

    Les administrateurs peuvent modifier la liste des méthodes d'exécution dans la section Operations Management > Configuration Management. Pour plus d'informations, consultez Gestion de la configuration.

    Affected Rows

    Oui

    Estimez le nombre de lignes de données que cette modification affectera.

    Change SQL

    Oui

    Vous pouvez sélectionner Text ou Attachment.

    SQL Text

    Oui

    Cet élément de configuration apparaît uniquement si vous définissez Change SQL sur Text. Dans la zone de texte SQL, saisissez les instructions SQL pouvant être exécutées directement.

    Remarque
    • Séparez plusieurs instructions SQL par un point-virgule (;).

    • Si la cible de modification est une instance, vous devez ajouter le nom de la base de données avant chaque nom de table dans les instructions SQL. Utilisez le format ${dbName}.${tableName}.

    • Lorsque vous soumettez le ticket, le système vérifie automatiquement la syntaxe SQL. Si la syntaxe est incorrecte, vous ne pouvez pas soumettre le ticket.

    Attachment

    Oui

    Cet élément de configuration apparaît uniquement si vous définissez Change SQL sur Attachment. Téléchargez la pièce jointe SQL pour la modification.

    Remarque

    La pièce jointe peut être un fichier .txt, .zip ou .sql. La taille maximale du fichier est de 15 Mo.

    Rollback SQL

    Non

    Vous pouvez sélectionner Text ou Attachment.

    Remarque

    DMS remplit automatiquement les informations SQL d'annulation lors de la création d'un ticket d'annulation uniquement si vous saisissez le SQL d'annulation ou téléchargez un fichier d'annulation. Sinon, vous devez saisir les informations vous-même.

    SQL Text

    Non

    Cet élément de configuration apparaît uniquement si vous définissez Rollback SQL sur Text. Saisissez les instructions SQL d'annulation. Le SQL d'annulation est le script inverse du SQL de modification.

    Attachment

    Non

    Cet élément de configuration apparaît uniquement si vous définissez Rollback SQL sur Attachment. Cliquez sur Upload File pour télécharger la pièce jointe SQL d'annulation.

    Remarque

    La pièce jointe peut être un fichier .txt, .zip ou .sql. La taille maximale du fichier est de 15 Mo.

    Stakeholders

    Non

    Les parties prenantes spécifiées peuvent consulter le ticket et collaborer dessus. Les utilisateurs qui ne sont pas des parties prenantes ne peuvent pas consulter le ticket, à l'exception des administrateurs et des DBA.

    Ticket Attachment

    Non

    Téléchargez une pièce jointe pour fournir des informations supplémentaires pour le ticket actuel.

  4. Cliquez sur Submit Request.

Étape 2 : Pré-vérifier le SQL

Après avoir soumis le ticket, le système effectue automatiquement une pré-vérification. Si la pré-vérification échoue, modifiez les instructions SQL en fonction de l'invite et réessayez.

Une fois la pré-vérification réussie, le statut de chaque élément de vérification (SQL Splitting, Type Check, Permission Check, SQL Review et Check Scanned Rows) est Passed. Les Affected Rows sont également affichées. Le nombre réel de lignes affectées dépend du comportement d'exécution SQL.

Étape 3 : Approuver le ticket

Une fois la pré-vérification réussie, cliquez sur Submit for Approval. Dans la boîte de dialogue Notice, cliquez sur OK.

Remarque

L'approbateur dans le modèle d'approbation par défaut pour les modifications de données est un DBA. Pour modifier le modèle d'approbation par défaut, consultez Modifier le modèle d'approbation par défaut.

La boîte de dialogue Notice affiche les informations de validation, telles que le nombre de bases de données physiques, le nombre d'instructions SQL et le nombre estimé de lignes affectées. Si le nombre de lignes affectées vérifié par le système diffère du nombre que vous avez saisi, un message d'avertissement rouge s'affiche. Confirmez les informations avant de soumettre le ticket.

Étape 4 : Exécuter la modification

Important

Exécutez les modifications pendant les heures creuses si possible.

  1. Une fois le ticket approuvé, cliquez sur Execute Change. Dans la boîte de dialogue Task Settings, définissez les paramètres d'exécution de la tâche, puis cliquez sur Execute.

    Remarque
    • Lors de la création du ticket, si vous définissez Execution Method sur Execute automatically after approval, le système ignore cette étape.

    • Si vous redémarrez une tâche en pause, le script reprend l'exécution là où il s'était arrêté.

    Élément de configuration

    Description

    Execution Policy

    Sélectionnez une politique d'exécution :

    • Execute Immediately : La tâche démarre immédiatement après que vous avez cliqué sur Execute.

    • Scheduled Execution : Spécifiez une heure de début pour la tâche. Par exemple, exécutez la tâche à 00:00:00 le 22 mai 2024.

    Remarque

    L'heure d'exécution réelle d'une tâche planifiée peut présenter une marge d'erreur de ±1 minute.

    Specify End Time

    Spécifiez une heure de fin pour la tâche. Si la tâche n'est pas terminée à l'heure de fin spécifiée, le système arrête l'exécution des tâches SQL restantes. Cela empêche les tâches de s'exécuter pendant les heures de pointe et d'affecter les opérations métier.

    Remarque

    L'heure de fin réelle de la tâche peut présenter une marge d'erreur de ±1 minute.

    Enable Global Transaction

    Sélectionnez si vous souhaitez activer les transactions globales. Cette fonctionnalité est désactivée par défaut.

    • Activer : Si l'exécution échoue, toutes les modifications sont annulées. Cela s'applique uniquement aux instructions DML, pas aux instructions DDL.

    • Désactiver : Les tâches SQL sont soumises une par une. Si une tâche échoue, l'exécution s'arrête, mais aucune modification n'est annulée.

    Enable Backup

    Sélectionnez si vous souhaitez activer les sauvegardes. Cette fonctionnalité est activée par défaut. Si vous activez cette fonctionnalité, vous pouvez utiliser le fichier de sauvegarde pour restaurer rapidement les données ultérieurement.

    Remarque
    • La sauvegarde des données est prise en charge uniquement lorsque vous exécutez des instructions UPDATE et DELETE.

    • La sauvegarde des données n'est pas prise en charge pour MongoDB et Redis.

    • Un maximum de 500 000 lignes de données peut être sauvegardé. Tout excédent est automatiquement tronqué.

    • La sauvegarde des données n'est pas prise en charge pour les tables associées.

    • Activer : Avant d'exécuter les instructions UPDATE ou DELETE, le système génère automatiquement une pièce jointe de script de sauvegarde.

      • Si la base de données est MySQL ou MariaDB, une instruction de sauvegarde REPLACE INTO est générée.

        Remarque

        MySQL inclut : RDS MySQL, PolarDB for MySQL, PolarDB-X et autres sources MySQL.

      • Si la base de données est un moteur autre que MySQL ou MariaDB, une instruction de sauvegarde INSERT est générée.

    • Désactiver : Aucune pièce jointe de sauvegarde n'est générée.

    Enable Primary/Standby Check

    Après avoir activé la vérification primaire/secondaire pour la base de données, vous pouvez garantir la synchronisation des données en temps réel entre les instances primaires et secondaires. Cela améliore la haute disponibilité de la base de données et la reprise rapide après sinistre.

    Grayscale Type

    La politique d'exécution des instructions SQL par lots.

    • No Grayscale : DMS exécute automatiquement toutes les instructions SQL de la tâche.

    • Pause after the first SQL statement succeeds : Après l'exécution réussie de la première instruction SQL, DMS met automatiquement l'exécution en pause. Pour continuer, cliquez sur Retry. Les instructions SQL restantes seront exécutées en une seule fois sans autres pauses.

    • Pause after each SQL statement succeeds : L'exécution est mise en pause après chaque instruction SQL. Vous devez cliquer manuellement sur Retry pour exécuter l'instruction SQL suivante.

    Remarque

    L'exécution des tâches SQL est surveillée par le module Security Rules, spécifiquement la section SQL Execution Control. Cela inclut des mécanismes tels que le délai d'expiration du verrou de la base de données avant l'exécution SQL, les vérifications de charge de la base de données et les politiques de veille après l'exécution SQL. Pour modifier les paramètres de point de détection par défaut, consultez Configurer le contrôle d'exécution SQL.

    • Une fois le ticket exécuté avec succès, dans la colonne Actions, cliquez sur Details pour afficher les détails tels que le statut d'exécution, le nombre d'exécutions, le nombre de lignes affectées, le script d'exécution et les journaux.

    • Une fois le ticket exécuté avec succès, vous pouvez accéder à la fenêtre SQL de la base de données cible pour vérifier si la modification des données répond à vos attentes.

  2. Facultatif : Créez un ticket d'annulation pour restaurer rapidement les données d'origine.

    Si la modification des données ne répond pas à vos attentes, vous pouvez créer un ticket d'annulation ou soumettre manuellement un ticket de modification standard des données pour restaurer rapidement les données d'origine. Les étapes suivantes montrent comment créer un ticket d'annulation :

    1. Dans la zone Execution du ticket, cliquez sur Generate Rollback Ticket à droite de la tâche cible.

    2. Sélectionnez une Source d'annulation et cliquez sur OK. Les trois sources d'annulation suivantes sont prises en charge :

      • Texte d'annulation : Le texte d'annulation que vous avez saisi lors de la configuration du ticket.

      • Pièce jointe d'annulation : La pièce jointe d'annulation que vous avez téléchargée lors de la configuration du ticket.

      • Fichier de sauvegarde : La pièce jointe de sauvegarde générée lors de l'exécution du ticket.

        Remarque

        Pour restaurer les données d'origine à l'aide d'un fichier de sauvegarde, vous devez activer les sauvegardes avant d'exécuter la modification.

    3. (Facultatif) : Vous pouvez modifier le texte d'annulation, la pièce jointe ou le fichier de sauvegarde selon vos besoins.

      • Texte d'annulation : Vous pouvez le modifier directement dans la zone de texte SQL.

      • Pièce jointe d'annulation ou fichier de sauvegarde : Vous pouvez télécharger la pièce jointe sur votre ordinateur local, la modifier, puis la télécharger à nouveau sur le ticket d'annulation.

    4. Une fois que vous avez confirmé que les informations d'annulation sont correctes, cliquez sur Submit Request. Le processus de ticket ultérieur est identique à celui d'un ticket de modification standard des données.

  3. Téléchargez le fichier de sauvegarde.

    Vous pouvez télécharger le fichier de sauvegarde pour l'enregistrer ou le modifier avant de le télécharger sur DMS.

    1. Dans la colonne Actions, cliquez sur Télécharger la sauvegarde. Le fichier de sauvegarde contient les parties principales suivantes :

      • L'instruction SQL d'origine pour la modification.

      • L'instruction SQL de requête pour la modification des données.

      • Le SQL de sauvegarde de la modification des données.

      Par exemple :

      /*
      [Database]:   rds@rm-bp144d5ky4l4rli0417****.mysql.rds.aliyuncs.com:3306[rds mysql]
      */
      /*
      [SQL]:
      UPDATE t_order
      SET product_id = 88
      WHERE id = 10054
      [BACKUP SQL]:    SELECT *
      FROM t_order
      WHERE id = 10054
      */
      REPLACE INTO `t_order`(`id`,`product_id`,`gmt_create`,`gmt_modified`,`customer_id`,`price`,`status`,`province`) VALUES
      (10054,81,'2021-12-14 09:44:44','2021-12-14 09:44:44',71,63.45,'Success','Hangzhou');
                                          
    2. Extrayez l'instruction de sauvegarde du fichier de sauvegarde. Après avoir confirmé que l'instruction de sauvegarde est correcte, soumettez un nouveau ticket de modification standard des données pour restaurer les données selon vos besoins.

      Remarque

      Si une instruction UPDATE a été exécutée par erreur et que l'instruction de sauvegarde est une instruction INSERT, vous devez déterminer vous-même la méthode de récupération.

  4. (Facultatif) Vérifiez que la modification répond aux attentes.

    1. Sur la page des détails du ticket, dans la zone Basic Information, placez le pointeur de la souris sur le nom de la base de données et cliquez sur Query.

    2. Vous êtes redirigé vers la SQL Console. Interrogez les données de la table pour vérifier si elles répondent à vos attentes.

FAQ

  • Q : Lorsque je soumets une modification de données dans DMS, la soumission échoue avec le message d'erreur suivant : « The topology of the published database XXX is inconsistent with the topology of the change baseline database. Please correct the topology and try again. »

    R : Pour une modification de base de données logique, la structure de sharding de la base de données de référence et de la base de données de production doit être cohérente. Par exemple, si la base de données de référence comporte 8 shards et 256 tables, la base de données de production doit également comporter 8 shards et 256 tables. Cette cohérence est requise car le script pour les modifications en ligne est généré en comparant la base de données de production avec la base de données de référence.

  • Q : Lorsque je crée un ticket de modification de données dans DMS, je ne trouve pas la base de données.

    R : La liste déroulante des bases de données peut ne pas afficher toutes les bases de données disponibles. Elle affiche généralement uniquement les bases de données que vous avez utilisées récemment. Si une base de données ne figure pas dans la liste déroulante, vous devez la rechercher. Pour Redis, effectuez la recherche par nom de base de données. Les bases de données RDS PostgreSQL fonctionnent différemment : vous devez effectuer la recherche par nom de schéma. Par exemple, la recherche de public renvoie des bases de données au format public:postgres. Vous pouvez également copier la chaîne de connexion depuis la fenêtre SQL Console et l'utiliser pour la recherche.

  • Q : Lorsque je sélectionne plusieurs bases de données et que je soumets un ticket de modification de données, dans quels cas les modifications sont-elles combinées en un seul ticket et dans quels cas sont-elles divisées en plusieurs tickets ?

    R : Que les tickets soient combinés ou divisés est déterminé par les règles de sécurité et les propriétaires des bases de données sélectionnées :

    • Si les bases de données utilisent la même règle de sécurité et ont le même propriétaire, elles sont combinées en un seul ticket contenant plusieurs tâches.

    • Si les bases de données utilisent des règles de sécurité différentes ou ont des propriétaires différents, elles sont divisées en plusieurs sous-tickets.