Oracle to OceanBase
BladePipe supports data replication from Oracle to OceanBase. View supported migration, sync, verification, and connector capabilities.
| Function | Description |
|---|---|
Schema Migration | Automatically generates destination creation statements based on source metadata and mappings if the selected table does not exist at the target. |
Full Data Migration | Logical migration that sequentially scans table data and writes it in batches to the target database. |
Incremental Real-time Sync | Supports common DML sync operations such as INSERT, UPDATE, DELETE. |
Data Verification and Correction | Performs full data verification and optionally corrects differential data based on verification results. Supports scheduled tasks. Documentation: Create Scheduled Verification and Correction Job |
Modify Subscription | Add, delete, or modify subscription tables, supporting historical data migration. Documentation: Modify Subscription |
Reset Position | Backtracks the position by timestamp or Scn, reprocessing Oracle Redo Log data from a past period. |
Table Name Mapping | Supports consistent with the source, lowercase conversion, uppercase conversion, suffix truncation with '_number'. |
DDL Sync |
|
Metadata Retrieval | Retrieves metadata from the source table to the destination, querying with set filtering conditions. |
Advanced Functions
| Function | Description |
|---|---|
Automatic Dictionary Creation | When using offline dictionaries to parse Oracle Redo files, the dictionary is automatically created during DataJob creation. |
Removal of Target Data before Full Data Migration | Remove the existing data in the Target before running the Full Data Migration, applicable for DataJobs reruning and scheduled Full Data migrations. |
Recreating Target Table | Recreate target tables before running the Full Data Migration, applicable for DataJobs reruning and scheduled Full Data migrations. |
Highly Concurrent Row-Level Write | It has the distributed database characteristics. A highly concurrent row-level write strategy (ROW) is adopted by default. |
Incremental Data Write Conflict Resolution Rule | IGNORE: Ignore primary key conflicts (skip writing), REPLACE: Replace the entire row in case of primary key conflicts. |
Scheduled Full Data Migration | Documentation 1: Create Scheduled Full Data Job |
Custom Code | Documentation 1: Create Custom Code Job |
Data Filtering Conditions | Supports data filtering with WHERE conditions using SQL 92 subset. Documentation: Create Data Filtering Job |
Set Target Primary Key | Change the primary key to another field for easier data aggregation and other operations. |
Add Virtual Columns | Supports adding custom virtual columns with fixed values, such as region, ID, etc. |
Limits
| Limit | Description |
|---|---|
Incremental Data Sync Performance | Due to LogMiner performance limits and BladePipe's lack of parallel analysis, the performance benchmark is set at 3000 records per second. |
Data Types | Do not support BLOB and derived types. |
OceanBase Version | Currently only OceanBase for MySQL is supported. |
OceanBase Data Types | Geospatial data is not supported. |
Prerequisites
| Prerequisite | Description |
|---|---|
Permissions for Account | |
Incremental Data Sync Preparation | |
Port Preparation | Allow the migration and sync node (Worker) to connect to the Oracle port (e.g., 1521). |
Parameters
| Parameter | Description |
|---|---|
fullFetchSize | Fetch size for scaning full data. |
eventStoreSize | Cache size for parsed incremental events. |
logminerUser | User name for connection to Oracle to execute LogMiner SQL. |
logminerPasswd | Password for connection to Oracle to execute LogMiner SQL. |
logminerConnectType | Way to connect to Oracle (PDB) to execute LogMiner SQL, including ORACLE_SID and ORACLE_SERVICE options. |
logminerSidOrService | SID or service name for connection to Oracle (PDB) to execute LogMiner SQL. |
parseRedoSqlParallel | Number of threads for parallel parsing of LogMiner data. |
parseRedoSqlBufferSize | Size of the circular buffer for parsing LogMiner data. |
redoFetchSize | Number of rows of LogMiner analyzed data to fetch each time. |
redoOfferTransMaxSize | Maximum number of unconsumed but committed transactions in cache. |
oraMiningSessionPauseSec | Interval between LogMiner sessions, in seconds. |
maxEventCountPerTxInMem | Maximum number of events per transaction in memory. |
logMiningScnStep | Analysis range specified when Oracle LogMiner analyzes redo logs. |
abandonUnCommitTxTimeoutSec | Automatically abandon transactions that have not been committed for longer than the specified timeout. |
restartTxWithDataTimeoutSec | Automatically restart DataJobs for transactions with data changes that have not been committed for longer than the specified timeout. |
oraUseOnlineDic | Whether to use online logs; false means using offline logs, which may put more stress on Oracle. |
oraReleaseIntervalSec | Interval for recreating connection for analysis to release Oracle server resources. |
oraMiningSessionPauseSec | Interval between execution of LogMiner commands for analysis. |
fallBackScnStep | Distance to keep from the latest Redo log data; 0 means to keep right behind the latest Redo log data. |
sqlCaseConversionEnabled | Whether to enable DDL case conversion (according to the default case rules of the current database). |
Tips: To modify the general parameters, see General Parameters and Functions.
Prerequisites
| Prerequisite | Description |
|---|---|
Permissions for Account | SELECT, INSERT, DELETE, UPDATE, and common DDL permissions. |
Port Preparation | Allow the migration and sync node (Worker) to connect to the OceanBase port (e.g., 3306). |
Parameters
| Parameter | Description |
|---|---|
keyConflictStrategy | Strategy for handling primary key conflicts during write in Incremental DataTask:
|
writeStrategy | Target write strategies include:
|
Tips: To modify the general parameters, see General Parameters and Functions.