OceanBase Migration Service (OMS) Community Edition supports real-time data transmission between OceanBase Database Community Edition and different types of data sources, such as MySQL, TiDB, and PostgreSQL, and supports data migration between MySQL tenants of OceanBase Database Community Edition.
Background information
OMS Community Edition supports online migration. The server deployed with OMS Community Edition must be able to connect to both source and destination databases at the same time. You can start a data migration project after you configure the source and destination databases and select the objects to be migrated.
OMS Community Edition automatically performs all the procedures in a data migration project, replicating the database objects, existing data, or incremental data in the source database (data table) to the destination database (data table). It also ensures the real-time synchronization of incremental data from the source database to the destination database.
Supported project types
OMS Community Edition supports online data migration and real-time incremental data synchronization. The following types of migration projects are supported:
Migrate data from a MySQL database to OceanBase Database Community Edition
Migrate data from OceanBase Database Community Edition to a MySQL database
Active-active disaster recovery within OceanBase Database Community Edition
Migrate data from a TiDB database to OceanBase Database Community Edition
Migrate data from a PostgreSQL database to OceanBase Database Community Edition
Note
For more information about the version restrictions on data sources, see Limitations.
Supported migration types
The following table describes the migration types supported by OMS Community Edition. For more information about each migration type, see the topic about creating a data migration project between the corresponding data sources in the "Data Migration" chapter.
| Migration type | Description |
|---|---|
| Schema migration | Migrates the definitions of data objects, such as tables, indexes, constraints, comments, and views, from the source database to the destination database. Temporary tables are automatically filtered out. If the source database is not an OceanBase database, OMS Community Edition performs format conversion and encapsulation based on the syntax definition and standard of the type of the destination tenant of OceanBase Database and then replicates the data to the destination database. |
| Full migration | Migrates the existing data from tables in the source database to the corresponding tables in the destination database. On the Full Migration page, you can view information on the Tables, Table Indexes, and Migration Performance tabs. The status of a full migration task changes to Completed only after the table objects and table indexes are migrated. On the Table Indexes page, you can click View Creation Syntax next to a table to view its index creation syntax. You can combine full migration with incremental synchronization to ensure data consistency between the source and destination databases. If any objects fail to be migrated during full migration, the causes of the failure are displayed. |
| Incremental synchronization | Synchronizes changed data in the source database to the corresponding tables in the destination database after an incremental synchronization task starts. Data changes are data addition, modification, and deletion. When services continuously write data to the source database, OMS Community Edition starts the incremental data pull module to pull incremental data from the source instance, parses and encapsulates the incremental data, and then stores the data. After that, OMS Community Edition starts the full data migration task. After the full data migration task is completed, OMS Community Edition starts the incremental data replay module to pull incremental data from the incremental data pull module. The incremental data is synchronized to the destination instance after being filtered, mapped, and converted. |
| Full verification | After the full data migration and incremental data migration are completed, OMS Community Edition automatically initiates a full data verification task to verify the data tables in the source and destination data sources. You can initiate custom data verification tasks during incremental data synchronization. If tables with inconsistent data are detected, you can choose to re-verify all data or only the inconsistent data in the tables. |
| Forward switchover | Forward switchover is an abstract and standard process of traditional system cutover and does not involve the switchover of application connections. This process includes a series of tasks that are performed by OMS Community Edition for application switchover in a data migration project. You need to make sure that the entire forward switchover process is completed before the application connections are switched over to the destination database. Forward switchover will be performed if you choose to perform data migration. Before forward switchover, you must terminate forward incremental synchronization, delete the additional columns and unique indexes that the migration depends on, add the CHECK constraint that was filtered out by OMS Community Edition during the synchronization, and activate the triggers and foreign keys in the destination database to ensure the data integrity and availability of the destination database. Objects such as triggers and foreign keys are disabled before the migration to avoid data inconsistency. If reverse incremental migration is configured, the subtasks for starting reverse incremental migration and disabling triggers and foreign keys in the source database are included in the forward switchover process. You can enable real-time incremental synchronization to synchronize data from the destination database to the source database. This ensures that the business data flows back to the source database and allows application switchover at any time. |
| Reverse incremental migration | In business cutover scenarios, after the migration is completed, you can start an incremental synchronization project in a reverse direction. In other words, you can synchronize data from the destination database to the source database before the business database switchover. In this way, data changes made in the destination database after the switchover are applied to the source business database in real time. |