OceanBase logo

OceanBase

A unified distributed database ready for your transactional, analytical, and AI workloads.

DEPLOY YOUR WAY

OceanBase Cloud

The best way to deploy and scale OceanBase

OceanBase Enterprise

Run and manage OceanBase on your infra

TRY OPEN SOURCE

OceanBase Community Edition

The free, open-source distributed database

OceanBase seekdb

Open source AI native search database

Customer Stories

Real-world success stories from enterprises across diverse industries.

View All
BY USE CASES

Mission-Critical Transactions

Global & Multicloud Application

Elastic Scaling for Peak Traffic

Real-time Analytics

Active Geo-redundancy

Database Consolidation

Resources

Comprehensive knowledge hub for OceanBase.

Blog

Live Demos

Training & Certification

Documentation

Official technical guides, tutorials, API references, and manuals for all OceanBase products.

View All
PRODUCTS

OceanBase Cloud

OceanBase Database

Tools

Connectors and Middleware

QUICK START

OceanBase Cloud

OceanBase Database

BEST PRACTICES

Practical guides for utilizing OceanBase more effectively and conveniently

Company

Learn more about OceanBase – our company, partnerships, and trust and security initiatives.

About OceanBase

Partner

Trust Center

Contact Us

International - English
中国站 - 简体中文
日本 - 日本語
Sign In
Start on Cloud

A unified distributed database ready for your transactional, analytical, and AI workloads.

DEPLOY YOUR WAY

OceanBase Cloud

The best way to deploy and scale OceanBase

OceanBase Enterprise

Run and manage OceanBase on your infra

TRY OPEN SOURCE

OceanBase Community Edition

The free, open-source distributed database

OceanBase seekdb

Open source AI native search database

Customer Stories

Real-world success stories from enterprises across diverse industries.

View All
BY USE CASES

Mission-Critical Transactions

Global & Multicloud Application

Elastic Scaling for Peak Traffic

Real-time Analytics

Active Geo-redundancy

Database Consolidation

Comprehensive knowledge hub for OceanBase.

Blog

Live Demos

Training & Certification

Documentation

Official technical guides, tutorials, API references, and manuals for all OceanBase products.

View All
PRODUCTS
OceanBase CloudOceanBase Database
ToolsConnectors and Middleware
QUICK START
OceanBase CloudOceanBase Database
BEST PRACTICES

Practical guides for utilizing OceanBase more effectively and conveniently

Learn more about OceanBase – our company, partnerships, and trust and security initiatives.

About OceanBase

Partner

Trust Center

Contact Us

Start on Cloud
编组
All Products
    • Databases
    • iconOceanBase Database
    • iconOceanBase Cloud
    • iconOceanBase Tugraph
    • iconInteractive Tutorials
    • iconOceanBase Best Practices
    • Tools
    • iconOceanBase Cloud Platform
    • iconOceanBase Migration Service
    • iconOceanBase Developer Center
    • iconOceanBase Migration Assessment
    • iconOceanBase Admin Tool
    • iconOceanBase Loader and Dumper
    • iconOceanBase Deployer
    • iconKubernetes operator for OceanBase
    • iconOceanBase Diagnostic Tool
    • iconOceanBase Binlog Service
    • Connectors and Middleware
    • iconOceanBase Database Proxy
    • iconEmbedded SQL in C for OceanBase
    • iconOceanBase Call Interface
    • iconOceanBase Connector/C
    • iconOceanBase Connector/J
    • iconOceanBase Connector/ODBC
    • iconOceanBase Connector/NET
icon

OceanBase Migration Service

V4.3.2Enterprise Edition

  • OMS Documentation
  • OMS Introduction
    • What is OMS
    • Terms
    • OMS HA
    • Principles of Store
    • Principles of Full-Import and Incr-Sync
    • Data verification principles
    • Architecture
      • Overview
      • Hierarchical functional system
      • Basic components
    • OMS Oracle full migration design and impact
    • Limitations
  • Quick Start
    • Data migration process
    • Data synchronization process
  • Deploy OMS
    • Deployment types
    • System and network requirements
    • Memory and disk requirements
    • Environment preparations
    • Deploy OMS on a single node
    • Deploy OMS on multiple nodes in a single region
    • Deploy OMS on multiple nodes in multiple regions
    • Scale out
    • Scale down deployment
    • Check the deployment
    • Deploy a time-series database (Optional)
  • OMS console
    • Log in to the OMS console
    • Overview
    • User center
      • Configure user information
      • Change your login password
      • Log out
  • Data migration
    • Overview
    • Migrate data from a MySQL database to a MySQL-compatible tenant of OceanBase Database
    • Migrate data from a MySQL-compatible tenant of OceanBase Database to a MySQL database
    • Migrate data from an Oracle database to the MySQL compatible mode of OceanBase Database
    • Migrate data from the Oracle compatible mode of OceanBase Database to an Oracle database
    • Migrate data from an Oracle database to the Oracle compatible mode of OceanBase Database
    • Migrate data from a DB2 LUW database to an Oracle-compatible tenant of OceanBase Database
    • Migrate data from an Oracle-compatible tenant of OceanBase Database to a DB2 LUW database
    • Migrate data from a DB2 LUW database to a MySQL-compatible tenant of OceanBase Database
    • Migrate data from a MySQL-compatible tenant of OceanBase Database to a DB2 LUW database
    • Migrate data between OceanBase databases of the same tenant type
    • Configure a bidirectional synchronization task
    • Migrate data from a TiDB database to a MySQL-compatible tenant of OceanBase Database
    • Migrate data from a PostgreSQL database to the Oracle compatible mode of OceanBase Database
    • Migrate data from a PostgreSQL database to the MySQL compatible mode of OceanBase Database
    • Migrate data from a PolarDB-X 1.0 database to a MySQL-compatible tenant of OceanBase Database
    • Migrate data from a Milvus database to a MySQL-compatible tenant of OceanBase Database
    • Migrate data from an OBSharding database to a MySQL-compatible tenant of OceanBase Database
    • Migrate incremental data from an Oracle-compatible tenant of OceanBase Database to a MySQL database
    • Manage data migration tasks
      • View details of a data migration task
      • Rename a data migration task
      • View and modify migration objects
      • Use tags to Manage data migration tasks
      • Perform batch operations on data migration tasks
      • Download and import settings of migration objects
      • View and modify migration parameters
      • Download a conflict log file
      • Start and pause a data migration task
      • End and delete a data migration task
    • Supported DDL operations and limits for synchronization
      • Synchronize DDL operations from a MySQL database to a MySQL-compatible tenant of OceanBase Database
        • Overview of DDL synchronization from MySQL to OceanBase Database's MySQL compatible mode
        • CREATE TABLE
          • Create a table
          • Create a column
          • Create indexes or constraints
          • Create partitions
        • Data type conversion
        • ALTER TABLE
          • Modify tables
          • Operations on columns
          • Operations on constraints and indexes
          • Partition operations
        • TRUNCATE TABLE
        • RENAME TABLE
        • DROP TABLE
        • CREATE INDEX
        • DROP INDEX
        • DDL incompatibilities between a MySQL database and a MySQL-compatible tenant of OceanBase Database
          • Overview
          • Incompatibilities of the CREATE TABLE statement
            • Incompatibilities of CREATE TABLE
            • Column types that are supported to create indexes or constraints
          • Incompatibilities of the ALTER TABLE statement
            • Incompatibilities of ALTER TABLE
            • Change the type of a constrained column
            • Change the type of an unconstrained column
            • Change the length of a constrained column
            • Change the length of an unconstrained column
            • Delete a constrained column
          • Incompatibilities of DROP INDEX operations
      • Synchronize DDL operations from the MySQL compatible mode of OceanBase Database to a MySQL database
      • DDL operations for synchronizing data from an Oracle database to an Oracle-compatible tenant of OceanBase Database
        • Overview of DDL synchronization from Oracle to OceanBase Database Oracle compatible mode
        • CREATE TABLE
          • Overview for CREATE TABLE
          • Create a relational table
            • Create a relational table
            • Define columns of a relational table
          • Virtual columns
          • Regular columns
          • Create partitions
            • Overview for creating partitions
            • Partitioning
            • Subpartitioning
            • Composite partitioning
            • Custom partitioning
            • Subpartition templates
          • Constraints
            • Overview
            • Inline constraints
            • Out-of-line constraints
        • CREATE INDEX
          • Overview
          • Regular table indexes
        • ALTER TABLE
          • Overview
          • Modify, drop, and add table attributes
          • Column attribute management
            • Modify, drop, and add column attributes
            • Rename a column
            • Add columns and column attributes
            • Modify column attributes
            • Drop columns
          • Modify, drop, and add constraints
          • Partition management
            • Modify, drop, and add partitions
            • Drop a partition
            • Drop a subpartition
            • Add partitions and subpartitions
            • Modify partitions
            • Drop partition data
        • DROP TABLE
        • RENAME OBJECT
        • TRUNCATE TABLE
        • DROP INDEX
        • DDL incompatibilities between an Oracle database and an Oracle-compatible tenant of OceanBase Database
          • Overview
          • Incompatibilities of CREATE TABLE
          • Incompatibilities in table modification operations
            • Incompatibilities of ALTER TABLE
            • Change the type of a constrained column
            • Change the type of an unconstrained column
            • Change the length of a constrained column
            • Change the length of an unconstrained column
      • Synchronize DDL operations from the Oracle compatible mode of OceanBase Database to an Oracle database
      • Synchronize DDL operations from a DB2 LUW database to an Oracle-compatible tenant of OceanBase Database
      • Synchronize DDL operations from the Oracle compatible mode of OceanBase Database to a DB2 LUW database
      • Synchronize DDL operations from a DB2 LUW database to a MySQL-compatible tenant of OceanBase Database
      • Synchronize DDL operations from the MySQL compatible mode of OceanBase Database to a DB2 LUW database
      • Synchronize DDL operations between MySQL-compatible tenants of OceanBase Database
      • Synchronize DDL operations between Oracle-compatible tenants of OceanBase Database
      • Synchronize DDL operations from a PostgreSQL database to the MySQL compatible mode of OceanBase Database
      • Synchronize DDL operations from a PostgreSQL database to the Oracle compatible mode of OceanBase Database
      • Synchronize DDL operations from an OBSharding database to the Oracle compatible mode of OceanBase Database
  • Data synchronization
    • Overview
    • Synchronize data from OceanBase Database to a Kafka instance
    • Synchronize data from OceanBase Database to a RocketMQ instance
    • Synchronize data from OceanBase Database to a DataHub instance
    • Synchronize data from an ODP logical table to a physical table in a MySQL-compatible tenant of OceanBase Database
    • Synchronize data from an ODP logical table to a DataHub instance
    • Synchronize data from an IDB logical table to a MySQL-compatible tenant of OceanBase Database
    • Synchronize data from an IDB logical table to a DataHub instance
    • Synchronize data from a MySQL database to a DataHub instance
    • Synchronize data from an Oracle database to a DataHub instance
    • Manage data synchronization tasks
      • View details of a data synchronization task
      • Change the name of a data synchronization task
      • View and modify synchronization objects
      • Use tags to Manage data synchronization tasks
      • Perform batch operations on data synchronization tasks
      • Download and import the settings of synchronization objects
      • View and modify the parameter configurations of a data synchronization task
      • Start and pause a data synchronization task
      • End and delete a data synchronization task
  • Data validation
    • Overview
    • Create a data validation task
    • Manage data validation tasks
      • View details of a data validation task
      • Change the name of a data validation task
      • View and modify validation objects
      • View and modify validation parameters
      • Manage data validation tasks by using tags
      • Import validation objects
      • Start, stop, and resume a data validation task
      • Clone a data validation task
      • Delete a data validation task
  • Create and manage data sources
    • Create data sources
      • Create an OceanBase data source
        • Create a physical OceanBase data source
        • Create an ODP data source
        • Create an IDB data source
        • Create a public cloud OceanBase data source
        • Create a standalone OceanBase data source
      • Create a MySQL data source
      • Create an Oracle data source
      • Create a TiDB data source
      • Create a Milvus data source
      • Create a Kafka data source
      • Create a RocketMQ data source
      • Create a DataHub data source
      • Create a DB2 LUW data source
      • Create a PostgreSQL data source
      • Create a PolarDB-X 1.0 data source
      • Create an OBSharding data source
    • Manage data sources
      • View data source information
      • Copy a data source
      • Edit a data source
      • Delete a data source
    • Create a database user
    • User privileges
    • Enable binlogs for the MySQL database
    • Minimum privileges required when an Oracle database serves as the source
  • OPS & Monitoring
    • O&M overview
    • Go to the overview page
    • Server
      • View server information
      • Update the quota
      • View server logs
      • Manage resource groups
    • Components
      • Store
        • Add a Store component
        • View details of a Store component
        • Update the configurations of a Store component
        • Start and pause a Store component
        • Delete a Store component
      • Incr-Sync
        • View details of an Incr-Sync component
        • Start and pause an Incr-Sync component
        • Migrate an Incr-Sync component
        • Update the configurations of an Incr-Sync component
        • Batch O&M
        • Delete an Incr-Sync component
      • Full-Import
        • View details of a Full-Import component
        • Pause a Full-Import component
        • Rerun and resume a Full-Import component
        • Update the configurations of a Full-Import component
        • Delete a Full-Import component
      • Full-Verification
        • View details of a Full-Verification component
        • Pause a Full-Verification component
        • Rerun and resume a Full-Verification component
        • Update the configurations of a Full-Verification component
      • Incr-Verification
        • View details of the Incr-Verification component
        • Pause an Incr-Verification component
        • Rerun and resume an Incr-Verification component
        • Update an Incr-Verification component
      • Row-Verification
        • View details of a Row-Verification component
    • O&M Task
      • View O&M tasks
      • Skip a task or subtask
      • Retry a task or subtask
    • Parameter Template
      • Overview
      • Task Template
        • Create a task template
        • View and edit task templates
        • Copy and export a task template
        • Delete a task template
      • Component Template
        • Create a component template
        • View and edit component templates
        • Copy and export a component template
        • Delete a component template
      • Component parameters
        • Store component parameters
        • Incr-Sync component parameters
        • Full-Import component parameters
        • Full-Verification component parameters
        • Incr-Verification component parameters
        • Parameters of the Row-Verification component
        • CM component parameters
        • Supervisor component parameters
  • System management
    • Permission Management
      • Overview
      • Manage users
      • Manage departments
    • Alert center
      • View task alerts
      • View system alerts
      • Manage alert settings
    • Associate with OCP
    • System parameters
      • Modify system parameters
      • Modify HA configurations
      • oblogproxy parameters
    • Manage access keys
    • Operation audit
  • Troubleshooting Guide
    • Manage OMS services
    • OMS logs
    • Component O&M
      • O&M operations for the Supervisor component
      • CLI-based O&M for the Connector component
      • O&M operations for the Store component
    • Component tuning
      • Incr-Sync/Full-Import tuning
      • Oracle store tuning
    • Set throttling
    • Store performance diagnostics
  • Reference Guide
    • Features
      • Configure DDL/DML synchronization
      • DDL synchronization scope
      • Rename databases and tables
      • Use SQL conditions to filter data
      • Set the incremental synchronization start timestamp
      • Configure matching rules for migration or synchronization objects
      • Configure matching rules for validation objects
      • Wildcard patterns supported for matching rules
      • Hidden column mechanisms
      • Instructions on schema migration
      • Create and update a heartbeat table
      • Change a topic
      • Column filtering
      • Data formats
    • API Reference
      • Overview
      • CreateProject
      • StartProject
      • StopProject
      • ResumeProject
      • ReleaseProject
      • DeleteProject
      • ListProjects
      • DescribeProject
      • DescribeProjectSteps
      • DescribeProjectStepMetric
      • DescribeProjectProgress
      • DescribeProjectComponents
      • ListProjectFullVerifyResult
      • StartProjectsByLabel
      • StopProjectsByLabel
      • CreateMysqlDataSource
      • CreateOceanBaseDataSource
      • CreateOceanBaseODPDataSource
      • CreatePolarDBDataSource
      • CreateMilvusDataSource
      • ListDataSource
      • CreateLabel
      • ListAllLabels
      • DeleteDataSource
      • CreateProjectModifyRecords
      • ListProjectModifyRecords
      • StopProjectModifyRecords
      • RetryProjectModifyRecords
      • CancelProjectModifyRecord
      • SubmitPreCheck
      • GetPreCheckResult
      • UpdateProjectConfig
      • Download schema conversion information
      • DownloadConflictData
      • ListConflictData
      • ResetIncrStartTimestamp
      • AdvanceProject
      • DescribeRegions
    • Alert Reference
      • oms_host_down
      • oms_host_down_migrate_resource
      • oms_host_threshold
      • oms_migration_failed
      • oms_migration_delay
      • oms_sync_failed
      • oms_sync_status_inconsistent
      • oms_sync_delay
    • SSO
      • Integrate the OIDC protocol to OMS to implement SSO
      • Integrate the SAML 2.0 protocol to OMS to implement SSO
      • Access Microsoft Entra ID using OMS SAML 2.0
    • OMS error codes
    • SQL statements for querying table objects
    • Create a trigger
    • Change the log level for a PostgreSQL database instance
    • Online DDL tools
    • Supplemental logging in Oracle databases
    • Configure Milvus topics
  • Upgrade Guide
    • Overview
    • Upgrade OMS in single-node deployment mode
    • Upgrade OMS in multi-node deployment mode
    • FAQ
  • FAQ
    • General O&M
      • How do I modify the resource quotas of an OMS container?
      • How do I troubleshoot the OMS server down issue?
      • Deploy InfluxDB for OMS
      • Increase the disk space of the OMS host
    • Task diagnostics
      • How do I troubleshoot common problems with Oracle Store?
      • How do I perform performance tuning for Oracle Store?
      • What do I do when Oracle Store reports an error at the isUpdatePK stack?
      • What do I do when a store does not have data of the timestamp requested by the downstream?
      • What do I do when OceanBase Store failed to access an OceanBase cluster through RPC?
      • How do I use LogMiner to pull data from an Oracle database?
    • OPS & monitoring
      • What are the alert rules?
    • Data synchronization
      • FAQ about synchronization to a message queue
        • What are the strategies for ensuring the message order in incremental data synchronization to Kafka
    • Data migration
      • User privileges
        • What privileges do I need to grant to a user during data migration to or from an Oracle database?
      • Full migration
        • How do I query the ID of a checker?
        • How do I query log files of the Checker component of OMS?
        • How do I query the verification result files of the Checker component of OMS?
        • What do I do if the target table does not exist?
        • What can I do when the full migration failed due to LOB fields?
        • What do I do if garbled characters cannot be written into OceanBase Database V3.1.2?
      • Incremental synchronization
        • How do I skip DDL statements?
        • How do I migrate an Oracle database object whose name exceeds 30 bytes in length?
        • How do I update whitelists and blacklists?
        • What are the application scope and limits of ETL?
    • Installation and deployment
      • How do I upgrade Store?
  • Release Note
    • Release Note
      • Version number rules
      • V4.3
        • OMS V4.3.2
        • OMS V4.3.1
        • OMS V4.3.0
      • V4.2
        • OMS V4.2.5
        • OMS V4.2.4
        • OMS V4.2.3
        • OMS V4.2.2
        • OMS V4.2.1
        • OMS V4.2.0
      • V4.1
        • OMS V4.1.0
      • V4.0
        • OMS V4.0.2
        • OMS V4.0.1
      • V3.4
        • OMS V3.4.0
      • V3.3
        • OMS V3.3.1
        • OMS V3.3.0
      • V3.2
        • OMS V3.2.2
        • OMS V3.2.1
      • V3.1
        • OMS V3.1.0
      • V2.1
        • OMS V2.1.2
        • OMS V2.1.0

Download PDF

OMS Documentation What is OMS Terms OMS HA Principles of Store Principles of Full-Import and Incr-Sync Data verification principles Overview Hierarchical functional system Basic components OMS Oracle full migration design and impact Limitations Data migration process Data synchronization process Deployment types System and network requirements Memory and disk requirements Environment preparations Deploy OMS on a single node Deploy OMS on multiple nodes in a single region Deploy OMS on multiple nodes in multiple regions Scale out Scale down deployment Check the deployment Deploy a time-series database (Optional) Log in to the OMS console Overview Configure user information Change your login password Log out Overview Migrate data from a MySQL database to a MySQL-compatible tenant of OceanBase Database Migrate data from a MySQL-compatible tenant of OceanBase Database to a MySQL database Migrate data from an Oracle database to the MySQL compatible mode of OceanBase Database Migrate data from the Oracle compatible mode of OceanBase Database to an Oracle database Migrate data from an Oracle database to the Oracle compatible mode of OceanBase Database Migrate data from a DB2 LUW database to an Oracle-compatible tenant of OceanBase Database Migrate data from an Oracle-compatible tenant of OceanBase Database to a DB2 LUW database Migrate data from a DB2 LUW database to a MySQL-compatible tenant of OceanBase Database Migrate data from a MySQL-compatible tenant of OceanBase Database to a DB2 LUW database Migrate data between OceanBase databases of the same tenant type Configure a bidirectional synchronization task Migrate data from a TiDB database to a MySQL-compatible tenant of OceanBase Database Migrate data from a PostgreSQL database to the Oracle compatible mode of OceanBase Database Migrate data from a PostgreSQL database to the MySQL compatible mode of OceanBase Database Migrate data from a PolarDB-X 1.0 database to a MySQL-compatible tenant of OceanBase Database Migrate data from a Milvus database to a MySQL-compatible tenant of OceanBase Database Migrate data from an OBSharding database to a MySQL-compatible tenant of OceanBase Database Migrate incremental data from an Oracle-compatible tenant of OceanBase Database to a MySQL database View details of a data migration task Rename a data migration task View and modify migration objects Use tags to Manage data migration tasks Perform batch operations on data migration tasks Download and import settings of migration objects View and modify migration parameters Download a conflict log file Start and pause a data migration task End and delete a data migration task Synchronize DDL operations from the MySQL compatible mode of OceanBase Database to a MySQL database Synchronize DDL operations from the Oracle compatible mode of OceanBase Database to an Oracle database Synchronize DDL operations from a DB2 LUW database to an Oracle-compatible tenant of OceanBase Database Synchronize DDL operations from the Oracle compatible mode of OceanBase Database to a DB2 LUW database Synchronize DDL operations from a DB2 LUW database to a MySQL-compatible tenant of OceanBase Database Synchronize DDL operations from the MySQL compatible mode of OceanBase Database to a DB2 LUW database Synchronize DDL operations between MySQL-compatible tenants of OceanBase Database Synchronize DDL operations between Oracle-compatible tenants of OceanBase Database Synchronize DDL operations from a PostgreSQL database to the MySQL compatible mode of OceanBase Database Synchronize DDL operations from a PostgreSQL database to the Oracle compatible mode of OceanBase Database Synchronize DDL operations from an OBSharding database to the Oracle compatible mode of OceanBase Database Overview Synchronize data from OceanBase Database to a Kafka instance Synchronize data from OceanBase Database to a RocketMQ instance Synchronize data from OceanBase Database to a DataHub instance Synchronize data from an ODP logical table to a physical table in a MySQL-compatible tenant of OceanBase Database Synchronize data from an ODP logical table to a DataHub instance Synchronize data from an IDB logical table to a MySQL-compatible tenant of OceanBase Database Synchronize data from an IDB logical table to a DataHub instance Synchronize data from a MySQL database to a DataHub instance Synchronize data from an Oracle database to a DataHub instance View details of a data synchronization task Change the name of a data synchronization task View and modify synchronization objects Use tags to Manage data synchronization tasks Perform batch operations on data synchronization tasks Download and import the settings of synchronization objects View and modify the parameter configurations of a data synchronization task Start and pause a data synchronization task End and delete a data synchronization task Overview Create a data validation task View details of a data validation task Change the name of a data validation task View and modify validation objects View and modify validation parameters Manage data validation tasks by using tags Import validation objects Start, stop, and resume a data validation task Clone a data validation task Delete a data validation task
OceanBase logo

The Unified Distributed Database for the AI Era.

Follow Us
Products
OceanBase CloudOceanBase EnterpriseOceanBase Community EditionOceanBase seekdb
Resources
DocsBlogLive DemosTraining & Certification
Company
About OceanBaseTrust CenterLegalPartnerContact Us
Follow Us

© OceanBase 2026. All rights reserved

Cloud Service AgreementPrivacy PolicySecurity
Contact Us
Document Feedback
  1. Documentation Center
  2. OceanBase Migration Service
  3. V4.3.2
iconOceanBase Migration Service
V 4.3.2Enterprise Edition
Enterprise Edition
  • V 4.3.2
  • V 4.3.1
  • V 4.3.0
  • V 4.2.5
  • V 4.2.4
  • V 4.2.3
  • V 4.0.2
  • V 3.4.0
Community Edition
  • V 4.2.13
  • V 4.2.12
  • V 4.2.11
  • V 4.2.10
  • V 4.2.9
  • V 4.2.8
  • V 4.2.7
  • V 4.2.6
  • V 4.2.5
  • V 4.2.4
  • V 4.2.3
  • V 4.2.1
  • V 4.2.0
  • V 4.0.0
  • V 3.3.1

Migrate data from a Milvus database to a MySQL-compatible tenant of OceanBase Database

Last Updated:2026-04-01 02:56:22  Updated
share
What is on this page
Background information
Limitations
Considerations
Data type mappings
Procedure

folded

share

This topic describes how to use OceanBase Migration Service (OMS) to migrate data from a Milvus database to a MySQL-compatible tenant of OceanBase Database.

Background information

Milvus is a high-performance, highly scalable vector database that provides powerful data modeling capabilities. For more information, see Milvus documentation.

The following table describes the key concepts of Milvus.

Concept Description
Database A schema. A Milvus database can contain multiple databases, and a database can contain multiple collections.
Collection A table for storing data. A collection can contain multiple fields. You can also enable dynamic fields when you create a collection. This feature allows you to insert data with flexible and changing schemas.
Primary key A primary key field. A collection can have only one primary key field.
Partition A partition of a collection. A collection can be partitioned, similar to a partitioned table.

OMS supports migrating dynamic fields from a Milvus database to a MySQL-compatible tenant of OceanBase Database.

  • When you migrate the schema of a Milvus database to a MySQL-compatible tenant of OceanBase Database, OMS migrates the dynamic fields to a column named $meta of the JSON type.

  • When you perform a full migration or incremental synchronization from a Milvus database to a MySQL-compatible tenant of OceanBase Database, OMS synchronizes the content of the dynamic fields of the Milvus database to the $meta column as a JSON value. If the column does not exist, an error is returned.

Limitations

  • Limitations on operations on the source database

    Do not perform DDL operations to modify the schema of the source database during schema migration or full migration. Otherwise, the data migration task may fail.

  • Currently, OMS supports Milvus databases of version V2.3.x and V2.4.x, and OceanBase Database of version V4.3.3 and later.

  • OMS does not support triggers on the target database. If a trigger exists on the target database, the data migration task may fail.

  • Data source identifiers and user accounts are globally unified in OMS.

  • OMS supports only migrating databases, tables, and columns whose names are ASCII characters and do not contain special characters (including line breaks, spaces, and .|"'`()=;/&\).

  • When you enable the AutoID attribute for a collection in the source Milvus database, you cannot perform reverse increment synchronization. Even if the precheck ignores the related check error, the reverse increment synchronization will still fail.

  • OMS does not support synchronizing schema changes. If a schema change occurs in the source database, data inconsistency may occur. For example, when you delete a partition, the operation cannot be synchronized to the target database.

  • For objects that cannot be migrated during schema migration, OMS cannot obtain the schema information of the Milvus database, and you cannot manually modify the SQL statements on the console to migrate them to the target database.

  • When you perform full migration from a Milvus database, resuming at breakpoints is not supported. If the full migration task is paused and then resumed, the tables or partitions that have not been migrated will be migrated again.

Considerations

  • When you migrate a partitioned table in a Milvus database based on the Partition Key + Num to a key partitioned table in a MySQL-compatible tenant of OceanBase Database, the data may be delivered to different partitions because the hash calculation rules of the two databases are different.

  • If a collection in the source Milvus database is configured with the TTL attribute, and the data is purged, the purge operation cannot be synchronized to the target database. This may cause data inconsistency.

  • When you migrate data of the BOOLEAN type from a Milvus database to a MySQL-compatible tenant of OceanBase Database, the data is converted to the TINYINT type. true is converted to 1, and false is converted to 0. When you perform reverse increment synchronization from a MySQL-compatible tenant of OceanBase Database to a Milvus database, the data that is not 1 is converted to false.

  • When you migrate data of the FLOAT type from a Milvus database to a MySQL-compatible tenant of OceanBase Database, the data is converted to the FLOAT type. However, the precision of the data is limited to six significant digits. If the data type of the source Milvus database is FLOAT, ARRAY, SPARSEFLOATVECTOR, or FLOATVECTOR, and the precision of the data exceeds the limit of the target database, the precision of the data is lost.

  • When you migrate a dynamic field from a Milvus database to a MySQL-compatible tenant of OceanBase Database, the NOT NULL attribute of the dynamic field is removed to avoid data write failures in the target database.

  • If the data in the source Milvus database exceeds the data type range supported by the MySQL-compatible tenant of OceanBase Database (such as JSON or VARCHAR), the data migration task fails.

    • JSON type: The Milvus database allows you to write string data (for example, "test") to a JSON field. However, the JSON type in the MySQL-compatible tenant of OceanBase Database does not support directly storing JSON data in string format.

    • VARCHAR type: In special scenarios, the Milvus database cannot effectively limit the length of the data written to it. For example, when the primary key field is of the VARCHAR type and the AutoID attribute is enabled, the AutoID generated by the Milvus database is usually 19 characters long. If the length of the VARCHAR field is less than 19 characters, the data will exceed the length limit and write failures will occur.

  • The Milvus database allows duplicate primary keys, but the MySQL-compatible tenant of OceanBase Database does not. By default, OMS synchronizes the latest data with the same primary key. However, during full or incremental synchronization, OMS may synchronize duplicate primary key data. In this case, OMS ignores the primary key conflict, retains the data in the target database, and displays a prompt on the console indicating the existence of conflicting data. You need to verify whether the data has been correctly migrated.

  • In incremental synchronization of partitioned tables in the Milvus database, OMS does not detect the INSERT, UPSERT, and DELETE operations on the specified partitions. Instead, OMS updates the data in the target database based on the primary key changes in the incremental data. Therefore, if data with the same primary key exists in different partitions of the Milvus database, data inconsistency may occur between the source and target databases. Similarly, during reverse increment synchronization, the operations on specified partitions are not supported. The operations are only applied to the Default partition in the Milvus database.

  • When you synchronize new columns from a MySQL-compatible tenant of OceanBase Database to a Milvus database, the new columns cannot be synchronized incrementally. If the new columns have default values, OMS does not update all existing data in the corresponding columns of the Milvus database. This may cause data inconsistency between the source and target databases.

  • The primary keys in the Milvus database cannot contain partition keys. During schema migration, OMS changes the primary key and partition key in the source Milvus database to a non-null unique key in the target database.

  • When you write the {} value to the SPARSEVECTOR type in a MySQL-compatible tenant of OceanBase Database, an error will be returned when the data is synchronized to the Milvus database.

  • If the primary key values in the Milvus database are the same except for the case, the data will be lost during migration to the MySQL-compatible tenant of OceanBase Database due to primary key conflicts.

  • If the reverse increment synchronization task is restarted or the checkpoint is pulled again, the data will be written again to the Milvus database. This will result in duplicate primary key records in the Milvus database.

Data type mappings

Category Parameter Description
Scalar types BOOL BOOLEAN
INT8 TINYINT
INT16 SMALLINT
INT32 INTEGER
INT64 BIGINT
FLOAT FLOAT
DOUBLE DOUBLE
VARCHAR VARCHAR
JSON JSON
ARRAY ARRAY
Vector types FLOAT_VECTOR VECTOR
SPARSE_FLOAT_VECTOR SPARSEVECTOR
Dynamic fields JSON

Procedure

  1. Create a data migration task.

    1. Log in to the OMS console.

    2. In the left-side navigation pane, click Data Migration.

    3. On the Data Migration page, click Create Task in the upper-right corner.

  2. On the Create Task page, specify a name for the migration task.

    We recommend that you use a combination of Chinese characters, digits, and letters. The name cannot contain spaces and must be no longer than 64 characters.

    Notice

    The task name is a unique identifier in the OMS system. Please specify an appropriate task name.

  3. In the Select Source and Target step, configure the parameters.

    migration-40-en

    Parameter Description
    Source If you have created a Milvus data source, select it from the drop-down list. If not, click New Data Source in the drop-down list and create a data source in the dialog box that appears on the right. For more information, see Create a Milvus data source.
    Target If you have created a physical data source for OceanBase Database in the MySQL compatible mode, select it from the drop-down list. If not, click New Data Source in the drop-down list and create a data source in the dialog box that appears on the right. For more information, see Create an OceanBase physical data source.
    Tag Click the text box and select a tag from the drop-down list. You can also click Manage Tags to create, modify, or delete a tag. For more information, see Manage data migration tasks by using tags.
  4. Click Next. In the Select Migration Type step, select the migration type for the current data migration task.

    Migration Type includes Schema Migration, Full Migration, Incremental Synchronization, and Reverse Increment.

    Migration type Limitations
    Schema migration After a schema migration task starts, OMS migrates the data object definitions (tables, indexes, constraints, comments, and views) from the source database to the target database and automatically filters out temporary tables.
    Full migration After a full migration task starts, OMS migrates the existing data in the source database tables to the corresponding tables in the target database.
    Incremental synchronization After an incremental synchronization task starts, OMS synchronizes the data that has changed in the source database (new, modified, or deleted data) to the corresponding tables in the target database.
    Incremental Synchronization has DML synchronization, which includes Insert, Delete, and Update. You can customize the settings as needed. For more information, see Customize DDL/DML settings.
    Reverse increment After a reverse increment task starts, you can real-time synchronize the changed data generated in the target database after the business switch back to the source database.
    Reverse increment tasks usually reuse the incremental synchronization settings. You can also customize the settings as needed. You cannot select Reverse Increment in the following cases:
    • Multi-table aggregation is involved.
    • Multiple source schemas map to the same target schema.
  5. Click Next. In the Select Migration Objects step, select the objects to be migrated for the current data migration task.

    You can select migration objects by using the Specify Objects and Match by Rule options. This topic describes how to select migration objects by using the Specify Objects option. For more information about how to configure matching rules, see Configure matching rules.

    Notice

    • If the database name or table name contains the "$$" characters, the data migration task cannot be created.

    • OMS automatically filters unsupported tables. For more information about how to query table objects, see Query table objects.

    1. In the Select Migration Objects step, select Specify Objects.

    2. In the Source Object(s) list, select the objects to be migrated. You can select one or more tables or views from one or more databases as migration objects.

    3. Click > to add the selected objects to the Target Object(s) list.

    OMS allows you to import objects by using text files. OMS also allows you to rename objects on the target database and remove one or all migration objects.

    Action Steps
    Import objects
    1. In the Target Object(s) list, click Import Objects in the upper-right corner.
    2. In the dialog box that appears, click OK.
      Notice:
      Importing objects will overwrite the previous selections. Proceed with caution.
    3. In the Import Migration Objects dialog box, import the objects to be migrated.
      You can rename databases and tables by importing a CSV file. For more information, see Download and import migration object settings.
    4. Click Validate.
    5. After the validation is successful, click OK.
    Rename OMS allows you to rename migration objects. For more information, see Rename databases and tables.
    Remove/Remove all OMS allows you to remove one or more objects temporarily selected to the target database.
    • Remove a single migration object
      In the Target Object(s) list, hover the pointer over the target object and click Remove.
    • Remove all migration objects
      In the Target Object(s) list, click Remove All in the upper-right corner. In the dialog box that appears, click OK.
  6. Click Next. In the Migration Options step, configure the parameters.

    • Schema migration

      In the Select Migration Type step, select Schema Migration to display the following parameters.

      Parameter Description
      Automatically Enter Next Stage upon Completion If you select schema migration and any other migration type, you can specify whether to automatically proceed to the next stage after schema migration is completed. The default value is Yes. You can also view and modify this value on the Schema Migration tab of the data migration task details page.
      Normal Index Migration Method The migration method for non-unique key indexes associated with the migrated table objects. Currently, only Do Not Migrate is supported.
    • Full migration

      After you select Select Migration Type and select Full Migration, the following parameters are displayed.

      oms65-en

      Parameter Description
      Full Migration Rate Limit You can choose whether to limit the full migration rate as needed. If you choose to limit it, you must specify the RPS and BPS. The RPS specifies the maximum rows of data migrated to the target database per second during full migration, and the BPS specifies the maximum amount of data in bytes migrated to the target database per second during full migration.

      Note

      The RPS and BPS values specified here are only for throttling. The actual full migration performance is subject to factors such as the settings of the source and target databases and the instance specifications.

      Full Migration Resource Configuration You can select Small, Medium, or Large to use the corresponding default values of Read Concurrency, Write Concurrency, and Memory. You can also customize the resource configurations for full migration. By setting the resource configuration for the Full-Import component, you can limit the resource consumption of a task in the full migration phase.

      Notice

      In the case of custom configurations, the minimum value is 1, and only integers are supported.

      Handle Non-empty Tables in Target Database Valid values: Ignore and Stop Migration.
      • If you select Ignore, when the data to be inserted conflicts with the existing data of a target table, OMS retains the existing data and records the conflict data.
      • If you select Stop Migration and a target table contains data, an error is returned during full migration, indicating that the migration is not allowed. In this case, you must clear the data in the target table before you can continue with the migration.

        Notice

        After an error is returned, if you click Resume in the dialog box, OMS ignores this error and continues to migrate data. Proceed with caution.

    • Incremental synchronization

      After you select Select Migration Type and select Incremental Synchronization, the following parameters are displayed.

      oms18-en

      Parameter Description
      Incremental Synchronization Rate Limit You can choose whether to limit the incremental synchronization rate as needed. If you choose to limit it, you must specify the RPS and BPS. The RPS specifies the maximum rows of data synchronized to the target database per second during incremental synchronization, and the BPS specifies the maximum amount of data in bytes synchronized to the target database per second during incremental synchronization.

      Note

      The RPS and BPS values specified here are only for throttling. The actual incremental synchronization performance is subject to factors such as the settings of the source and target databases and the instance specifications.

      Incremental Log Pull Resource Configuration You can select Small, Medium, or Large to use the corresponding default value of Memory. You can also customize the resource configurations for incremental log pull. By setting the resource configuration for the Store component, you can limit the resource consumption of a task in log pull in the incremental synchronization stage.

      Notice

      In the case of custom configurations, the minimum value is 1, and only integers are supported.

      Incremental Data Write Resource Configuration You can select Small, Medium, or Large to use the corresponding default values of Write Concurrency and Memory. You can also customize the resource configurations for incremental data writes. By setting the resource configuration for the Incr-Sync component, you can limit the resource consumption of a task in data writes in the incremental synchronization stage.

      Notice

      In the case of custom configurations, the minimum value is 1, and only integers are supported.

      Incremental Record Retention Duration The duration that incremental parsed files are cached in OMS. A longer retention duration results in more disk space occupied by the Store component.
      Incremental Synchronization Start Timestamp
      • If you have selected Full Migration as the migration type, this parameter is not displayed.
      • If you have selected Incremental Synchronization but not Full Migration, specify a point in time after which the data is to be synchronized. The default value is the current system time. For more information, see Set an incremental synchronization timestamp.
    • Reverse increment

      This section is displayed only if you select Reverse Increment in the Select Migration Type step. The configuration parameters of reverse increment are the same as those of incremental synchronization. You can select Reuse Incremental Synchronization Configuration in the upper-right corner.

      oms19-en

    • Advanced options

      This section is displayed only if the MySQL compatible mode of the target OceanBase Database is V4.3.0 or later, and you select Schema Migration in the Select Migration Type step.

      oms8-en

      The table object storage types of the target include Default, Row Storage, Column Storage, and Hybrid Row-Column Storage. This configuration determines the storage type of the target table objects during schema migration or incremental synchronization. For more information, see default_table_store_format.

      Note

      The value Default means that other parameters are automatically set based on the parameter configurations of the target database. Table objects in schema migration are written to corresponding schemas based on the specified storage type.

    If the configuration parameters on the page do not meet your requirements, you can click Parameter Configuration at the bottom of the page to configure more parameters. You can also reference a task template or component template that has been configured.

    oms131-en

  7. Click Precheck to perform a precheck on the data migration task.

    In the Precheck step, OMS checks whether the network connections of the databases meet the requirements. You can start a data migration task only after all precheck tasks are passed. If the precheck fails:

    • You can troubleshoot and fix the issue, and then perform the precheck again until the precheck succeeds.

    • You can also click Skip in the Actions column of the failed precheck item. A dialog box appears, prompting you to confirm the impact of skipping the operation. If you confirm that you want to skip the operation, click OK in the dialog box.

  8. Click Start Task. If you do not need to start the task, click Save to go to the details page of the data migration task, where you can manually start the task as needed.

    You can click Configure Validation Task in the upper-right corner of the details page to compare the data between the source and target databases. For more information, see Create a data verification task.

    OMS allows you to reduce the number of migration objects during a data migration task. For more information, see View and modify migration objects. After the data migration task is started, it is executed based on the selected migration types. For more information, see the "View migration details" section in View details of a data migration task.

Previous topic

Migrate data from a PolarDB-X 1.0 database to a MySQL-compatible tenant of OceanBase Database
Last

Next topic

Migrate data from an OBSharding database to a MySQL-compatible tenant of OceanBase Database
Next
What is on this page
Background information
Limitations
Considerations
Data type mappings
Procedure