Selecting objects for MySQL migration

In Oracle Cloud Infrastructure Database Migration service, you can specify objects that are to be included or excluded from a MySQL migration.

When creating a migration, specify rules for selecting objects in the Advanced Settings on the Selected Objects tab.

You can choose either Include or Exclude from the Action list to specify if a rule should include or exclude the specified database objects in the migration.

If you do not define any rules for a Full migration type, then all the server schemas and objects are migrated. If you select a Schema migration type, then only the schema defined in the Database name when creating the source connection is migrated. For both the migration types, the Objects and Schemas Excluded by Default apply.

If you specify Include rules, the migration will only move the specified objects and their dependent objects; all other objects are automatically excluded.

When specifying Exclude rules, the migration will exclude the specified objects and their dependent objects; all other objects are included in the migration.

The following five schemas are always excluded by default, regardless of who generated the content:
  • information_schema
  • mysql
  • perormance_schema
  • sys
  • ndbinfo

When performing an online migration, the Database Migration service creates a dynamic schema named ggadmin_${dbName}, where dbName is the name of the database that was defined for the source connection (for example, ggadmin_employees). This schema is used by Oracle GoldenGate to create the checkpoint and heartbeat tables, and is created on both the source and target databases. When the migration is complete, these schemas are deleted.

You can exclude the following object types for MySQL migrations: USER, SCHEMA, TABLE, TRIGGER, EVENT, ROUTINE

For TRIGGER, the object name can be defined in either of the following different ways:
  • tableName.triggerName: This will limit the rule to just that one specific trigger.
  • tableName: This will include all triggers from the defined table.

To create a rule, enter values for each of the following fields:

  • Schema specifies the schema of the selected database objects. You can include/exclude objects from different schemas, you are not limited to having all rules defining the same schema. Moreover, wild characters are allowed in the form of a Java regular expression in this field.

  • Object name specifies the name of selected database objects

  • Object Type specifies the type of selected database objects.

You can filter Schema and Object Name fields using any valid regular expression as documented in Pattern. For example, you can enter .* in the Object Name field to select objects of any name.

The objects included in a migration are also influenced by the Job Mode of the initial load, as explained in Configuring initial load advanced options for MySQL migrations.

Note the following restriction: For TRIGGER and USER object types, regular expressions are not supported.