Créer et exécuter une tâche de migration MySQL contenant des métadonnées avec une clause DEFINER
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Présentation
Une tâche de migration MySQL ne migre pas les données utilisateur. Par conséquent, les sources contenant des métadonnées définies par les utilisateurs avec la clause DEFINER échoueront lorsqu'elles seront appelées sur le nouveau réplica Cloud SQL, car les utilisateurs n'existent pas encore dans l'instance cible.
Pour identifier les valeurs DEFINER présentes dans vos métadonnées, vous pouvez exécuter les requêtes suivantes sur votre base de données source MySQL. Vérifiez les résultats pour les entrées root%localhost ou pour les utilisateurs qui n'existent pas dans l'instance de destination:
Pour exécuter une tâche de migration à partir d'une source qui inclut ces métadonnées, vous pouvez effectuer l'une des opérations suivantes:
Créez les utilisateurs sur l'instance de réplication Cloud SQL de destination avant de démarrer votre tâche de migration.
Créez un job de migration sans le démarrer. Autrement dit, sélectionnez Créer au lieu de Créer et démarrer.
Créez les utilisateurs à partir de votre instance MySQL source sur votre instance Cloud SQL de destination à l'aide de l'API ou de l'UI Cloud SQL.
Démarrez la tâche de migration à partir de la liste des tâches de migration ou de la page de la tâche spécifique.
Mettez à jour la clause DEFINER sur INVOKER sur votre instance MySQL source avant de configurer votre tâche de migration.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/04/17 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/04/17 (UTC)."],[[["MySQL migration jobs do not migrate user data, leading to potential failures when metadata defined with the `DEFINER` clause is invoked on the new Cloud SQL replica if the users are not present."],["You can identify which `DEFINER` values exist in your metadata by running specific queries on your MySQL source database, checking for `root%localhost` or users absent in the destination instance."],["To ensure a successful migration, you must either create the necessary users on the destination Cloud SQL replica before starting the migration job, or update the `DEFINER` clause to `INVOKER` on the source MySQL instance."],["Metadata created by `'root'@'localhost'` will cause the process to fail, and you will need to change the definer to a different user before starting the migration."]]],[]]