Cette rubrique décrit les opérations DDL synchronisables depuis un locataire MySQL OceanBase vers une base de données MySQL.
Opérations DDL prises en charge pour la synchronisation
-
CREATE TABLERemarqueLa syntaxe
CREATE TABLE AS SELECTn’est pas prise en charge. DROP TABLETRUNCATE TABLE-
ALTER TABLE CHANGE COLUMNRemarqueVous pouvez augmenter la longueur d’une colonne, mais pas modifier son type.
ALTER TABLE ADD COLUMNALTER TABLE ALTER COLUMN SET DEFAULTetALTER TABLE ALTER COLUMN DROP DEFAULTALTER TABLE DROP COLUMNCREATE INDEXetALTER TABLE ADD INDEXDROP INDEXetALTER TABLE DROP INDEX
Limites des instructions DDL
Si une table à synchroniser fait l’objet d’opérations DDL non prises en charge, le projet de migration peut échouer et entraîner des anomalies de données irrécupérables.
Les opérations DDL fréquentes sur une même table ne sont pas prises en charge. Une fois qu’un composant Store a terminé une opération DDL (déterminable via l’horodatage), il passe à l’opération suivante. À défaut, le Store risque de s’arrêter inopinément ou de provoquer des anomalies de données irrécupérables.
Veillez à ce qu’aucune opération DDL ne soit exécutée avant la création d’un composant Store ni pendant son démarrage. Si l’extraction des journaux est activée, assurez-vous qu’aucune opération DDL n’intervient entre l’heure de début de l’extraction et l’heure actuelle. Sinon, le Store risque de s’arrêter inopinément ou de provoquer des anomalies de données irrécupérables.
Les noms de table avant et après l’instruction
RENAME TABLEdoivent tous deux figurer dans la liste des tables à synchroniser, ou tous deux en être exclus.Si vous activez les opérations DDL lors de la migration incrémentielle, l’instruction
DROP INDEXest appliquée à tous les index, ce qui peut entraîner une perte d’index dans la base de données de destination.