A MySQL migration job
doesn't migrate user data. Therefore,
sources which contain metadata defined by users with the DEFINER clause will
fail when invoked on the new Cloud SQL replica, because the users don't yet
exist there.
To identify which DEFINER values exist in your metadata, you can run the
following queries on your MySQL source database. Check the results for entries for
either root%localhost or for users that don't exist in the destination instance:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-01 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."]]],[]]