La fonctionnalité de modification de schéma sans verrouillage de Data Management Service (DMS) vous permet de modifier les schémas de table sans verrouiller ces dernières. Cette approche évite les interruptions métier et réduit la latence de réplication entre le nœud principal et le nœud secondaire liée aux opérations DDL en ligne natives. Cette rubrique utilise une instance ApsaraDB RDS for MySQL comme exemple pour vous montrer comment effectuer une modification de schéma sans verrouillage dans DMS.
Ajouter une instance et activer la modification de schéma sans verrouillage
Connectez-vous à DMS 5.0.
-
Dans le volet de navigation de gauche, cliquez sur l'icône
.RemarqueSi vous utilisez la console en mode simple, cliquez sur Database Instances dans le volet de navigation de gauche, puis sur l'icône
. -
Dans la boîte de dialogue Add Instance , configurez les paramètres suivants :
Sous l'onglet Alibaba Cloud , sélectionnez MySQL.
-
Configurez les paramètres des sections Basic Information et Advanced Information . Pour plus d'informations, consultez la rubrique Enregistrer une instance de base de données cloud.
Catégorie
Paramètre
Description
Data source
-
Alibaba Cloud-MySQL est sélectionné par défaut. Vous pouvez choisir un autre type de base de données.
Basic information
Database type
Sélectionnez le type de l'instance de base de données.
RemarqueAprès la sélection d'un type de base de données, les paramètres de la section Basic Information s'actualisent automatiquement.
Instance region
Sélectionnez la région où se trouve l'instance de base de données.
Other primary accounts
Ce paramètre s'affiche si vous sélectionnez Cross-Alibaba Cloud account instance. Sélectionnez le compte Alibaba Cloud auquel appartient l'instance de base de données.
RemarqueSi le compte Alibaba Cloud ne figure pas dans la liste, cliquez sur Add User pour ajouter le compte utilisé pour acheter l'instance. Pour plus d'informations, consultez la rubrique Ajouter un utilisateur.
Registration method
Sélectionnez la méthode d'enregistrement de l'instance de base de données. Vous pouvez enregistrer l'instance via son Instance ID ou sa Connection String.
Instance ID ou Connection String
Saisissez l'Instance ID ou la connection string.
RemarqueUne chaîne de connexion se compose d'une adresse réseau interne et d'un port. Exemple pour ApsaraDB RDS for MySQL :
rm-XXXXXXX.mysql.rds.aliyuncs.com:3306.Access mode
Indiquez si vous souhaitez activer l'hébergement de sécurité pour l'instance, ainsi que la méthode de connexion. Lorsque l'hébergement de sécurité est activé, les identifiants ne sont pas directement exposés aux utilisateurs, ce qui permet un contrôle granulaire des autorisations.
Security Hosting - Automatic (Recommended) : DMS active automatiquement l'hébergement de sécurité pour l'instance et crée un compte de base de données ainsi qu'un mot de passe pour la connexion à DMS.
RemarqueCe paramètre n'est disponible que lors de l'enregistrement d'une instance ApsaraDB RDS.
Le compte créé automatiquement est visible dans la console ApsaraDB RDS. Ne modifiez ni ne supprimez ce compte afin de garantir le bon fonctionnement des fonctionnalités DMS.
Les comptes créés automatiquement par DMS pour les instances ApsaraDB RDS, à l'exception de PostgreSQL, ne disposent pas des autorisations nécessaires pour créer des bases de données ou des comptes de base de données.
Security Hosting - Manual : DMS active automatiquement l'hébergement de sécurité pour l'instance, mais vous devez saisir manuellement les identifiants d'un compte de base de données existant.
Security Hosting - KMS : DMS active automatiquement l'hébergement de sécurité pour l'instance, mais vous devez sélectionner manuellement un identifiant RDS créé dans Key Management Service (KMS) pour vous connecter à la base de données.
RemarqueCe paramètre n'est disponible que lors de l'enregistrement d'une instance ApsaraDB RDS.
No Hosting (Not Recommended) : Si l'hébergement de sécurité est désactivé, vous devez utiliser fréquemment votre compte de base de données et votre mot de passe pour vous connecter, ce qui peut affecter le bon déroulement des opérations.
Add-on feature pack
Sélectionnez un pack de fonctionnalités.
Security Collaboration ou Stable Change (choisissez l'une des deux options) : Security Collaboration prend en charge toutes les capacités de Stable Change et fournit des fonctionnalités DevOps vous permettant de personnaliser de manière flexible les flux de travail de développement et d'approbation. Stable Change propose des solutions pour des opérations de base de données plus stables, telles que la modification de schéma sans verrouillage et la révision SQL.
RemarqueSi vous ne sélectionnez ni Security Collaboration ni Stable Change, l'instance utilise le mode Flexible Management par défaut.
Sensitive Data Protection : Cette fonctionnalité vous permet de gérer et de masquer les données sensibles. Pour plus d'informations, consultez la rubrique Activer Sensitive Data Protection.
Security rules
Ce paramètre s'affiche si vous sélectionnez le pack de fonctionnalités Security Collaboration.
Vous pouvez sélectionner les règles système par défaut ou des règles de sécurité personnalisées pour mettre en œuvre un contrôle granulaire de la base de données.
Classification and grading template
L'option de configuration du modèle de classification des données n'apparaît que lorsque Sensitive Data Protection est activé.
Vous pouvez associer un modèle de classification et de hiérarchisation des données à une instance afin d'identifier si les champs des bases de données et des tables de l'instance correspondent aux règles définies dans le modèle. Si un champ correspond aux règles, il reçoit une étiquette de classification et de hiérarchisation pour protéger les champs présentant des niveaux de sensibilité élevés.
Advanced information
Environment type
Sélectionnez le type d'environnement de l'instance.
Instance name
Décochez la case Synchronize Instance Name pour spécifier un nom d'affichage personnalisé pour l'instance dans DMS.
RemarqueDMS synchronise le nom de l'instance depuis le service cloud uniquement lors du premier enregistrement. Vous pouvez ultérieurement modifier le nom de l'instance en la modifiant.
Lock-free Schema Change
Indiquez si vous souhaitez activer la fonctionnalité de modification de schéma sans verrouillage. Deux modes d'exécution sont pris en charge : Execute with DMS lock-free change et Prioritize native lock-free, switch to DMS on failure.
RemarqueCe paramètre n'est disponible que pour les bases de données MySQL.
Enable SSL
RemarqueCe paramètre n'est disponible que pour les bases de données MySQL ou Redis.
Par défaut, les connexions SSL sont disabled dans DMS.
Si vous devez vous connecter à la base de données via SSL, vous devez enable SSL dans DMS et vous assurer que SSL est également activé sur le serveur de base de données.
Secure Sockets Layer (SSL) chiffre les connexions réseau au niveau de la couche de transport pour améliorer la sécurité et l'intégrité des données, mais cela peut augmenter la latence de connexion.
Instance DBA
Sélectionnez un rôle DBA pour les flux de travail ultérieurs, tels que les demandes d'autorisation.
Query timeout (s)
Ce paramètre met fin aux instructions de requête exécutées dans la fenêtre SQL qui dépassent la limite de temps spécifiée, contribuant ainsi à la protection de la base de données.
Export timeout (s)
Ce paramètre met fin aux tâches d'exportation lancées depuis la fenêtre SQL qui dépassent la limite de temps spécifiée, contribuant ainsi à la protection de la base de données.
-
Une fois les paramètres configurés, cliquez sur Test Connection dans le coin inférieur gauche de la section Basic Information et attendez que le test aboutisse.
RemarqueSi le test de connexion échoue, vérifiez et modifiez vos paramètres en fonction du message d'erreur.
Une fois le test de connexion réussi, cliquez sur Submit.
Modification de schéma sans verrouillage
Connectez-vous à DMS 5.0.
-
Dans la barre de navigation supérieure, choisissez .
RemarqueSi vous utilisez la console DMS en mode simple, placez le pointeur sur l'icône
dans le coin supérieur gauche de la console, puis choisissez . -
Configurez le ticket de modification sans verrouillage. Le tableau suivant décrit les paramètres clés. Pour plus d'informations sur les autres paramètres, consultez la rubrique Modification DML sans verrouillage.
Paramètre
Description
Database
Recherchez et sélectionnez une ou plusieurs bases de données de destination.
Have Permission : affiche uniquement les bases de données pour lesquelles vous disposez d'autorisations de modification.
All : affiche toutes les bases de données, à l'exception de celles pour lesquelles le contrôle d'accès aux métadonnées est activé.
RemarqueSi vous ne disposez pas des autorisations de modification sur la base de données cible, choisissez dans la barre de navigation supérieure. Cliquez ensuite sur pour demander les autorisations requises.
SQL statements for change
Saisissez des instructions Data Definition Language (DDL), telles que
ALTER TABLEouOPTIMIZE.RemarqueSi vous saisissez des instructions Data Manipulation Language (DML), une tâche de modification de données sans verrouillage est initiée. Pour plus d'informations, consultez la rubrique Modification DML sans verrouillage.
-
Cliquez sur Submit Application.
Le système effectue automatiquement une prévérification SQL. Si la prévérification échoue, vous pouvez cliquer sur Modify SQL pour corriger les instructions SQL en fonction de l'erreur, puis soumettre à nouveau la demande.
Une fois le ticket approuvé, cliquez sur Execute Change dans la section Execute de la page des détails du ticket.
-
Configurez les paramètres d'exécution de la tâche.
Paramètre
Description
Execution strategy
Execute Immediately : il s'agit de l'option par défaut. La tâche démarre immédiatement après que vous avez cliqué sur Confirm Execution.
Schedule : sélectionnez une heure de début pour la tâche. La tâche s'exécutera à l'heure spécifiée après que vous avez cliqué sur Confirm Execution.
Specify end time
On : sélectionnez 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 l'arrête. Cela empêche les tâches de s'exécuter pendant les heures de pointe et d'affecter les opérations métier.
Off : il s'agit de l'option par défaut.
-
Cliquez sur Confirm Execution.
RemarqueUne tâche mise en pause redémarre depuis le début.
Dans la section Execute , vous pouvez consulter le statut de la tâche, les paramètres de la tâche, les journaux de planification et d'autres informations.
Vous pouvez également suivre la progression de la tâche de modification de schéma sans verrouillage en choisissant . Pour plus d'informations, consultez la rubrique Afficher la progression d'une tâche de modification sans verrouillage.
Opérations connexes
Suivez la progression des tâches de modification dans la fonctionnalité Task Management de DMS. Pour plus d'informations, consultez la rubrique Task Management.
Si la fonctionnalité lock-free schema change est activée, vous pouvez également exécuter des tâches Standard Data Change sans verrouiller les tables. Pour plus d'informations, consultez la rubrique Standard Data Change.