OceanBase Migration Service (OMS) allows the admin user to modify system parameters and general users to view system parameters.
Procedure
Log on to the OMS console.
In the left-side navigation pane, choose System Management > System Parameters.
The table on the System Parameters page contains the following columns: Parameter Name, Value, Module, Description, and Modified At.
Parameter Description Default value oms.oceanbase.logproxy.pool The configurations of oblogproxy. OMS automatically identifies this parameter. For more information, see oblogproxy parameters. {"default":""} operation_audit_log.enable Specifies whether to enable operation audit. false operation_audit_log.retention_time The retention period of operation audit records. The recommended value ranges from 1 to 1095, in days. 7 oms.captcha.enable Specifies whether to enable the verification code feature. After you change the value to true, an image verification code appears on the logon page. The image verification code will time out in 10 minutes. You must enter the image verification code to log on to OMS. A timeout or input error will cause a logon failure. false oms.user.password.expiration.date.config The expiration strategy for different user passwords. {"rootRolePasswordValidityDays":90,"rootViewerRolePasswordValidityDays":90,"adminRolePasswordValidityDays":90,"adminViewerRolePasswordValidityDays":90,"userRolePasswordValidityDays":90,"userViewerRolePasswordValidityDays":90,"userPasswordValidityDaysTipsThreshold":30} mysql.store.metabuilder.filter Specifies whether the MySQL store filters metadata based on the whitelist. Valid values: true and false. - true: indicates that metadata is filtered based on the whitelist.
- false: indicates that all metadata is pulled without filtering.
false mysql_to_obmysql.charset.mapping The conversion rule for character sets that are not supported in a project of migrating data from a MySQL database to a MySQL tenant of OceanBase Database. []
Example: [{"charset":"utf16le","mappedCharset":"utf16"},{"charset":"*","mappedCharset":"utf8mb4"}]mysql_to_obmysql.collation.mapping The conversion rule for collations that are not supported in a project for migrating data from a MySQL database to a MySQL tenant of OceanBase Database. []
Example: [{"collation":"utf16le_general_ci","mappedCollation":"utf16_general_ci"},{"collation":"*","mappedCollation":"utf8mb4_general_ci"}]alarm.thresholds The alert thresholds. failedLengthOfTimeThreshold: the failure alert threshold for a project.syncDelayThreshold: the delay alert threshold for a synchronization project.syncFailedLengthOfTimeThreshold: the failure time alert threshold for a synchronization project.migrateDelayThreshold: the delay alert threshold for a migration project.migrateFailedLengthOfTimeThreshold: the failure time alert threshold for a migration project.alarmRestrainTimeOfMin: the alert suppression time by alert level.HIGH: the high protection level.MEDIUM: the medium protection level.LOW: the low protection level.IGNORE: the No Protection level.
{"delayThreshold":{"HIGH":30,"MEDIUM":300,"LOW":900},"failedLengthOfTimeThreshold":{"HIGH":30,"MEDIUM":300,"LOW":900},"alarmRestrainTimeOfMin":{"HIGH":3,"MEDIUM":3,"LOW":3,"IGNORE":100},"rule":"OMS_CONFIG_RULE_ALARM_THRESHOLDS"} ha.config Specifies whether to enable high availability (HA). For more information, see Modify HA configurations. {"enable":false,"enableHost":false,"enableStore":true,"perceiveStoreClientCheckpoint":false,"enableConnector":true,"enableJdbcWriter":true,"subtopicStoreNumberThreshold":5,"checkRequestIntervalSec":600,"checkJdbcWriterIntervalSec":600,"checkHostDownIntervalSec":540,"checkModuleExceptionIntervalSec":240,"clearAbnormalResourceHours":72} migration.checker.params.fast The parameters that must be specified when the concurrency of the Full-Import or Full-Verification component is Fast. limitator.platform.threads.number: the number of threads.limitator.select.batch.max: the batch query size in full data migration or verification.limitator.image.insert.batch.max: the batch INSERT size in full data migration.limitator.datasource.connections.max: the number of connections. If the number of concurrent threads exceeds the number of connections, the concurrent data is invalid.limitator.java.opt: the Java virtual machine (JVM) parameters.task.checker_jvm_param: the JVM parameters of the Full-Import and Full-Verification components.task.new.migrate.job.reader.worker.num: the number of threads used to read data from the source.task.new.migrate.job.writer.worker.num: the number of threads used to write data to the destination.task.new.migrate.job.write.batch.size: the maximum size of a batch for writing data to the destination.task.new.migrate.job.data.queue.size: the size of the queue of the data read. If the amount of data not consumed by the dispatcher exceeds the value of this parameter, the reader is blocked.task.new.migrate.job.batch.queue.size: the size of the batching queue. If the number of batches not consumed by the writer exceeds the value of this parameter, the dispatcher is blocked.task.new.migrate.job.splitor.queue.size: the size of the data splitting queue. If the number of data splits that are not read exceeds this value, the data splitting process is paused.
{"limitator.platform.threads.number":32,"limitator.select.batch.max":1200,"limitator.datasource.connections.max":50,"limitator.java.opt":null,"task.checker_jvm_param":"-server -Xms16g -Xmx16g -Xmn8g -Xss512k","task.new.migrate.job.reader.worker.num":32,"task.new.migrate.job.writer.worker.num":32,"task.new.migrate.job.write.batch.size":200,"task.new.migrate.job.data.queue.size":32768,"task.new.migrate.job.batch.queue.size":256,"task.new.migrate.job.splitor.queue.size":256} migration.checker.params.normal The parameters that must be specified when the concurrency of the Full-Import or Full-Verification component is Normal. limitator.platform.threads.number: the number of threads.limitator.select.batch.max: the batch query size in full data migration or verification.limitator.image.insert.batch.max: the batch INSERT size in full data migration.limitator.datasource.connections.max: the number of connections. If the number of concurrent threads exceeds the number of connections, the concurrent data is invalid.limitator.java.opt: the Java virtual machine (JVM) parameters.task.checker_jvm_param: the JVM parameters of the Full-Import and Full-Verification components.task.new.migrate.job.reader.worker.num: the number of threads used to read data from the source.task.new.migrate.job.writer.worker.num: the number of threads used to write data to the destination.task.new.migrate.job.write.batch.size: the maximum size of a batch for writing data to the destination.task.new.migrate.job.data.queue.size: the size of the queue of the data read. If the amount of data not consumed by the dispatcher exceeds the value of this parameter, the reader is blocked.task.new.migrate.job.batch.queue.size: the size of the batching queue. If the number of batches not consumed by the writer exceeds the value of this parameter, the dispatcher is blocked.task.new.migrate.job.splitor.queue.size: the size of the data splitting queue. If the number of data splits that are not read exceeds this value, the data splitting process is paused.
{"limitator.platform.threads.number":8,"limitator.select.batch.max":600,"limitator.datasource.connections.max":50,"limitator.java.opt":null,"task.checker_jvm_param":"-server -Xms8g -Xmx8g -Xmn4g -Xss512k","task.new.migrate.job.reader.worker.num":8,"task.new.migrate.job.writer.worker.num":8,"task.new.migrate.job.write.batch.size":200,"task.new.migrate.job.data.queue.size":32768,"task.new.migrate.job.batch.queue.size":256,"task.new.migrate.job.splitor.queue.size":256} migration.checker.params.steady The parameters that must be specified when the concurrency of the Full-Import or Full-Verification component is Steady. limitator.platform.threads.number: the number of threads.limitator.select.batch.max: the batch query size in full data migration or verification.limitator.image.insert.batch.max: the batch INSERT size in full data migration.limitator.datasource.connections.max: the number of connections. If the number of concurrent threads exceeds the number of connections, the concurrent data is invalid.limitator.java.opt: the Java virtual machine (JVM) parameters.task.checker_jvm_param: the JVM parameters of the Full-Import and Full-Verification components.task.new.migrate.job.reader.worker.num: the number of threads used to read data from the source.task.new.migrate.job.writer.worker.num: the number of threads used to write data to the destination.task.new.migrate.job.write.batch.size: the maximum size of a batch for writing data to the destination.task.new.migrate.job.data.queue.size: the size of the queue of the data read. If the amount of data not consumed by the dispatcher exceeds the value of this parameter, the reader is blocked.task.new.migrate.job.batch.queue.size: the size of the batching queue. If the number of batches not consumed by the writer exceeds the value of this parameter, the dispatcher is blocked.task.new.migrate.job.splitor.queue.size: the size of the data splitting queue. If the number of data splits that are not read exceeds this value, the data splitting process is paused.
{"limitator.platform.threads.number":4,"limitator.select.batch.max":200,"limitator.datasource.connections.max":50,"limitator.java.opt":null,"task.checker_jvm_param":"-server -Xms4g -Xmx4g -Xmn2g -Xss512k","task.new.migrate.job.reader.worker.num":4,"task.new.migrate.job.writer.worker.num":4,"task.new.migrate.job.write.batch.size":100,"task.new.migrate.job.data.queue.size":32768,"task.new.migrate.job.batch.queue.size":256,"task.new.migrate.job.splitor.queue.size":256} migration.db.support_versions The source database versions supported in data migration. The key is the database type, and the value is a regular expression containing supported database versions. "MYSQL": "(5.5 |5.6|5.7|8.0).*": indicates that OMS supports MySQL 5.5, 5.6, 5.7, and 8.0."MARIADB": "10.[12345].*": indicates that OMS supports MariaDB 10.1.0 to 10.5.9."ORACLE": "1[01289].*": indicates that OMS supports Oracle 10g, 11g, 12c, 18c, and 19c."DB2": "(9.7|10.1|10.5|11.1|11.5).*": indicates that OMS supports DB2 LUW 9.7, 10.1, 10.5, 11.1, and 11.5 on the Linux or AIX operating system.
{ "MYSQL": "(5.5|5.6|5.7|8.0).*", "MARIADB": "10.[12345].*", "ORACLE": "1[01289].*", "DB2": "(9.7|10.1|10.5|11.1|11.5).*", "POSTGRESQL": "(10).*"} migration.mysql.support_collations The whitelist of collations supported by the source MySQL database in data migration. ["binary","gbk","gb18030","utf8mb4","utf16","utf8"] migration.mysql.support_charsets The whitelist of character sets supported by the source MySQL database in data migration. The value is an array of character sets supported by MySQL. Each element is one MySQL character set. ["binary","gbk","gb18030","utf8mb4","utf16","utf8"] migration.mysql.support_datatypes The whitelist of data types supported by the source MySQL database in data migration. The value is an array of data types supported by MySQL. Each element is one MySQL data type. [] migration.oracle.unsupport_datatypes The blacklist of data types unsupported by the source Oracle database in data migration. The value is an array of data types unsupported by Oracle. Each element is one Oracle data type. ["LONG","LONG RAW","XMLTYPE","UNDEFINED","BFILE","ROWID","UROWID"] ops.dms.logic_name.suffix.pattern The prefix of the DMS-based logical table synchronization task. Empty ops.store.max_count_per_subtopic The maximum number of active store processes allowed under a subtopic. The value indicates the maximum number of active store processes allowed. 6 precheck.skippable_flags Specifies whether to skip the precheck. In the case of failed precheck items, if you confirm that they have no impact on the database service, you can set their values to true in the precheck.skippable_flagsparameter. The value of this parameter is of the JSON type. Example:{ "DB_ACCOUNT_FULL_READ_PRIVILEGE": true, "DB_ACCOUNT_INCR_READ_PRIVILEGE":true, "DB_SERVICE_STATUS":true }.
For more information about the values of different precheck items, see the "Precheck items" section in this topic.{} sync.unified.config The general parameter for an OMS synchronization project. It has the following three fields: enableHeartBeatRecordToDataHub: specifies whether to deliver the heartbeats.enableHadoopVendorsKafkaServer: specifies whether the Kafka server supports Hadoop.disableIdentificationAlgorithm: specifies whether to disable hostname (domain name) verification for the address of the created Kafka data source that requires SSL authentication. If the SSL root certificate provided does not contain the address of this Kafka data source, you can set this parameter totrueto disable hostname verification.checkStoreStartedMinSyncProcess: the minimum synchronization progress for determining whether the store is properly started. Default value: 3s. You can change the value and the change takes effect in real time.
The full migration starts only when the store is running and the synchronization progress exceeds the specified minimum value.fullJvmMem: the initial memory of the Full-Import component. Default value: 4096 MB.incrJvmMem: the initial memory of the Incr-Sync component. Default value: 2048 MB.
{"enableHeartBeatRecordToDataHub":false,"enableHadoopVendorsKafkaServer":false,"disableIdentificationAlgorithm":false,"checkStoreStartedMinSyncProcess":3,"fullJvmMem":4096,"incrJvmMem":2048} store.topic.mode.config The rule that is used to build a whitelist of store subtopics in a data synchronization project in OMS. - OceanBase Database supports the sharing of store subtopics within a cluster and among tenants.
In theoceanbasefield, you can specifyOCEANBASE_TENANTorOCEANBASE_CLUSTERformode. Themode_numindicates the maximum subscription granularity for the specified mode.- Sharing within a cluster: A store is shared within a cluster. The store configurations in tenants are invalid. The first created store is reused. A new store is created only when the current store does not meet the timestamp requirements.
- Sharing among tenants:
When the value ofmode_numis 1, different stores are created for different tenants.
When the value ofmode_numis greater than 1, multiple tenants share the same store. The number of affected tenants is the value ofmode_numminus 1, and the first created store is reused. A new store is created only when the current store does not meet the timestamp requirements.
- OceanBase Database in MySQL mode supports the subscription of store subtopics based only on service instances.
In themysqlfield, you can specify onlyINSTANCEformode. - OceanBase Database in Oracle mode supports the subscription of store subtopics based only on databases.
In theoraclefield, you can specify onlyDATABASEformode.
{"oceanbase":{"mode":"OCEANBASE_TENANT","modeNum":1},"mysql":{"mode":"INSTANCE","modeNum":1},"oracle":{"mode":"DATABASE","modeNum":1}} sync.connnector.max.size The maximum number of concurrent data synchronization projects. 2 sync.ddl.supported The DDL operations supported for data synchronization projects. {"supportConfigs":{"ADB_SINK":["ALTER_TABLE","ALTER_TABLE_ADD_COLUMN","ALTER_TABLE_MODIFY_COLUMN"],"DATAFLOW_SINK":["ALTER_TABLE","ALTER_TABLE_ADD_COLUMN","ALTER_TABLE_MODIFY_COLUMN"]}} store.logic.config.url.config If the ConfigUrl of OceanBase Database Proxy (ODP) logical tables cannot be directly obtained, you must manually specify it by using this parameter. The key of configUrlMapis{ip}:{port}-{cluster}, and the value is the correct ConfigUrl.{"enabled":false,"configUrlMap":{}} migration.timeout The timeout period for executing migration objects. {"ddl.timeout.in.private.cloud": 120000, "ddl.timeout.in.public.cloud": 600000} Click the edit icon in the Value column for a specified parameter.
In the Modify Value dialog box, set Value or click Reset to Default.
Click OK.
Precheck items
The following table describes precheck items that are controlled by the precheck.skippable_flags parameter. The value true indicates that the key can be skipped, and the value false indicates that the key cannot be skipped. For example, if the precheck of the unique key and foreign key can be skipped, you can specify the following statements to configure the precheck.skippable_flags parameter:
{
"DB_UK_INDEX": true,
"DB_FOREIGN_REFERENCE":true,
}
You can log on to the OMS console, go to the details page of a data migration project, and view the names of the precheck items on the Precheck tab, which are prefixed with "Source-" or "Destination-".
| Precheck item | Enumeration name |
|---|---|
| Unique key check | DB_UK_INDEX |
| Incremental log check | DB_INCR_LOG |
| Foreign key check | DB_FOREIGN_REFERENCE |
| Account full read permission check | DB_ACCOUNT_FULL_READ_PRIVILEGE |
| Account write permission check | DB_ACCOUNT_WRITER_PRIVILEGE |
| Account Incremental Read Permission Check | DB_ACCOUNT_INCR_READ_PRIVILEGE |
| OB cluster node connectivity check | DB_NODE_CONNECT |
| White List 64K Length Limit Check | DB_WHITE_LIST_LENGTH |
| Account read privilege on oceanbase.gv$memstore check | DB_MEMSTORE_READ_PRIVILEGE |
| Table name uniqueness check | DB_TABLE_NAME_UNIQUE |
| LOB field 48m limit check | DB_TABLE_LOB_SIZE |
| Database ROW_MOVEMENT check | DB_ROW_MOVEMENT |
| Check for the migration of no more than 508 fields or 4092 fields in table migration. The number of checked fields depends on the version of OceanBase Database. The number of checked fields is 508 for OceanBase Database earlier than V3.2.0, and 4092 for OceanBase Database V3.2.0 and later. |
DB_COLUMN_COUNT |
| Database data type check | DB_DATA_TYPE |
| Database engine check | DB_ENGINE |
| Inner account full read permission check | DB_INNER_ACCOUNT_FULL_READ_PRIVILEGE |
| Foreign key constraint support check for Oracle | DB_ORACLE_FK_SUPPORT_CHECK |
| Database running status check | DB_SERVICE_STATUS |
| Account permission on table creation check | DB_ACCOUNT_CREATE_PRIVILEGE |
| Partition table check | DB_PARTITION_TABLE |
| Kafka topic existence check | KAFKA_TOPIC |
| RocketMQ topic existence check | ROCKETMQ_TOPIC |
| Datahub schema consistency check | DATAHUB_SCHEMA |
| Datahub topic structure synchronization does not exist check | DATAHUB_TOPIC_NOT_EXIST |
| Logical table account full read permission check | LOGIC_DB_ACCOUNT_FULL_READ_PRIVILEGE |
| Logical table account incremental read permission check | LOGIC_DB_ACCOUNT_INCR_READ_PRIVILEGE |
| Logical table existence check | LOGIC_TABLE_EXIST |
| Check whether the source and target ends are the same | LOGIC_TABLE_SAME_SOURCE_AND_DEST |
| Database clock synchronization check | DB_TIME_SYNC |
| Check on the number of data packets | DB_MAX_ALLOWED_PACKET |