在調用部分介面配置或查詢遷移或同步、訂閱任務時,您需要配置或查詢預留參數Reserve(資料類型為字串String,傳入格式為JSON)來完善或查看源或目標執行個體的配置資訊(比如目標Kafka叢集的資料存放區格式、雲企業網CEN的執行個體ID)。本文將介紹Reserve參數的適用情境和配置說明。
注意事項
您需要根據執行個體的任務類型和資料庫的接入方式等配置公用參數,然後根據源和目標資料庫類型等實際情況配置其他參數。
若您需要配置的DTS執行個體中源和目標資料庫有相同的參數,僅需配置一次即可,無需重複配置。
若所傳入資料為數值,則您需加英文雙引號(""),將其轉變為字串String。
您可以根據需求在控制台進行相應的預配置,然後預覽對應配置的OpenAPI參數資訊,以協助您填寫請求參數。更多資訊,請參見預覽OpenAPI的請求參數。
相關介面
公用參數
請根據DTS執行個體類型和資料庫的接入方式,在Reserve中配置參數。
表 1. 遷移或同步執行個體
參數 | 是否必填 | 說明 |
targetTableMode | 是 | 目標已存在表的處理模式:
|
dts.datamove.source.bps.max | 否 | 全量或增量任務每秒同步或遷移的最巨量資料量,單位為B(Byte)。 說明 需與 |
conflict | 否 | 雙向同步任務的全域衝突修複策略,取值為:
|
filterDDL | 否 | 雙向同步任務是否過濾正向任務的DDL操作,取值為:
|
autoStartModulesAfterConfig | 否 | 任務啟動控制參數,取值:
|
etlOperatorCtl | 否 | 是否配置ETL功能,取值為:
|
etlOperatorSetting | 否 | ETL的資料處理語句。更多資訊,請參見資料處理DSL文法。 |
etlOperatorColumnReference | 否 | T+1業務專用的欄位,ETL運算元。 |
configKeyMap | 否 | ETL運算元配置資訊。 |
syncArchitecture | 否 | 同步拓撲,取值為:
|
dataCheckConfigure | 否 | 資料校正配置,詳情請參見DataCheckConfigure參數說明。 |
dbListCaseChangeMode | 否 | 目標庫對象名稱大小寫策略,取值為:
說明 更多資訊,請參見目標庫對象名稱大小寫策略。 |
maxRetryTime | 否 | 源庫、目標庫無法串連(可預期異常,例如網路原因異常、鎖等待等)後的重試時間,取值為[600,86400]的整數,單位為秒。預設為720分鐘(43200秒),建議設定30分鐘(1800秒)以上。 |
retry.blind.seconds | 否 | 源庫、目標庫出現其他問題(非預期異常,例如DDL執行異常、DML執行異常等)後的重試時間,取值為[60,86340]的整數,單位為秒。預設為10分鐘(600秒),建議設定10分鐘(600秒)以上。 重要
|
表 2. 訂閱執行個體
參數 | 是否必填 | 說明 |
vpcId | 是 | 訂閱執行個體的專用網路ID。 |
vswitchId | 是 | 訂閱執行個體的虛擬交換器ID。 |
startTime | 否 | 訂閱資料的起始時間戳記,單位為秒。 |
endTime | 否 | 訂閱資料的結束時間戳記,單位為秒。 |
表 3. 資料庫執行個體的接入方式為雲企業網CEN
參數 | 是否必填 | 說明 |
srcInstanceId | 否 | 源執行個體的雲企業網執行個體ID。樣本:
說明 當源端資料庫執行個體接入方式為雲企業網CEN時需要配置。 |
destInstanceId | 否 | 目標執行個體的雲企業網執行個體ID。樣本:
說明 當目標端資料庫執行個體接入方式為雲企業網CEN時需要配置。 |
來源資料庫參數配置
請根據來源資料庫類型,在Reserve中配置參數。
表 4. 來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)
參數 | 配置條件 | 說明 |
privilegeMigration | 當源和目標資料庫類型均為RDS MySQL時。 | 是否遷移帳號,取值為:
|
privilegeDbList | 遷移帳號的資訊。 | |
definer | 是否保留資料庫物件原有的Definer,取值為true或false。 | |
amp.increment.generator.logmnr.mysql.heartbeat.mode | 當來源資料庫類型為自建MySQL時。 | 是否去除正反向任務的心跳錶SQL,取值為:
|
whitelist.dms.online.ddl.enable | 當目標資料庫類型為MySQL(包括RDS MySQL和自建MySQL)、PolarDB MySQL版、AnalyticDB MySQL版或AnalyticDB PostgreSQL版,且為同步或遷移執行個體時。 | 此六個參數需要配合使用,控制是否複製源表Online DDL工具執行過程的暫存資料表到目標庫。
|
sqlparser.dms.original.ddl | ||
whitelist.ghost.online.ddl.enable | ||
sqlparser.ghost.original.ddl | ||
online.ddl.shadow.table.rule | ||
online.ddl.trash.table.rule | ||
isAnalyzer | 當源和目標執行個體的資料庫類型均為MySQL(包括RDS MySQL和自建MySQL)時。 | 是否開啟遷移評估功能,評估源庫和目標庫的結構是否滿足要求。取值為true或false。 |
srcSSL | 接入方式為雲執行個體或ECS自建資料庫時。 | 源端資料庫的串連方式,取值為:
|
表 5. 來源資料庫類型為PolarDB MySQL版
參數 | 配置條件 | 說明 |
amp.increment.generator.logmnr.mysql.heartbeat.mode | 必填 | 是否去除正反向任務的心跳錶SQL,取值為:
|
whitelist.dms.online.ddl.enable | 當目標資料庫類型為MySQL(包括RDS MySQL和自建MySQL)、PolarDB MySQL版、AnalyticDB MySQL版或AnalyticDB PostgreSQL版,且為同步或遷移執行個體時。 | 此六個參數需要配合使用,控制是否複製源表Online DDL工具執行過程的暫存資料表到目標庫。
|
sqlparser.dms.original.ddl | ||
whitelist.ghost.online.ddl.enable | ||
sqlparser.ghost.original.ddl | ||
online.ddl.shadow.table.rule | ||
online.ddl.trash.table.rule |
表 6. 來源資料庫類型為RDS MariaDB
參數 | 配置條件 | 說明 |
srcSSL | 接入方式為雲執行個體或ECS自建資料庫時。 | 源端資料庫的串連方式,取值為:
|
表 7. 來源資料庫類型為Oracle
參數 | 配置條件 | 說明 |
isTargetDbCaseSensitive | 當目標資料庫類型為AnalyticDB PostgreSQL版時。 | 是否為目標對象添加引號,取值為true或false。 |
當目標資料庫類型為AnalyticDB PostgreSQL版,且待同步或遷移的對象存在無主鍵表時。 | 是否將無主鍵表全部設定ROWID作為主鍵和分布鍵,取值為true或false。 | |
srcOracleType | 必填 | Oracle執行個體的類型,取值為:
|
source.column.encoding | 需要指定實際業務的寫入編碼時。 | 實際業務的寫入編碼,支援選擇的編碼為:
|
表 8. 來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)
參數 | 配置條件 | 說明 |
isTargetDbCaseSensitive | 當目標資料庫類型為AnalyticDB PostgreSQL版時。 | 是否為目標對象添加引號,取值為true或false。 |
source.extractor.type | 當目標資料庫類型不為DataHub,且有增量任務時需要配置。 | SQL Server增量同步處理或遷移的模式,取值為:
|
src.sqlserver.schema.mapper.mode | 目標資料庫類型為MySQL(包括RDS MySQL和自建MySQL)、PolarDB MySQL版或AnalyticDB for MySQL時。 | 源庫和目標庫結構映射模式,取值為:
|
表 9. 來源資料庫類型為Tair/Redis
包含雲資料庫Tair(相容Redis)和自建Redis。
參數 | 配置條件 | 說明 |
srcKvStoreMode | 資料庫執行個體的接入方式不為雲執行個體時。 | 源自建Redis的執行個體模式,取值為:
|
any.sink.redis.expire.extension.seconds | 必填 | 源庫中的Key遷移到目標庫時額外延長的到期時間。為保障資料的一致性,如有使用到(包括但不限於)如下命令,建議設定延長Key的到期時間為600秒以上。
|
any.source.redis.use.slave.node | 當srcKvStoreMode為cluster時。 | 當源自建Redis的執行個體模式為叢集版時,選擇從Master或Slave節點拉取資料。取值為:
|
表 10. 來源資料庫類型為MongoDB(包括ApsaraDB for MongoDB和自建MongoDB)
參數 | 配置條件 | 說明 |
srcEngineArchType | 必填 | 源MongoDB資料庫的架構類型,取值為:
|
sourceShardEndpointUsername | 當srcEngineArchType為2時。 | 源MongoDB資料庫的Shard帳號。 |
sourceShardEndpointPassword | 源MongoDB資料庫的Shard密碼。 |
表 11. 來源資料庫類型為PolarDB-X 2.0
參數 | 配置條件 | 說明 |
amp.increment.generator.logmnr.mysql.heartbeat.mode | 必填 | 是否去除正反向任務的心跳錶SQL,取值為:
|
表 12. 來源資料庫類型為PolarDB PostgreSQL版(相容Oracle)
參數 | 配置條件 | 說明 |
srcHostPortCtl | 接入方式為公網IP時。 | PolarDB PostgreSQL版(相容Oracle)是否選擇多來源資料,取值為:
|
srcHostPorts | 當srcHostPortCtl為multiple時。 | 源PolarDB PostgreSQL版(相容Oracle)節點的IP地址和連接埠號碼資訊,多個 |
表 13. 來源資料庫類型為TiDB
參數 | 配置條件 | 說明 |
amp.increment.generator.logmnr.mysql.heartbeat.mode | 必填 | 是否去除正反向任務的心跳錶SQL,取值為:
|
isIncMigration | 必填 | 是否做增量遷移,取值為yes或no。 重要 同步任務僅支援yes。 |
srcKafka | 當isIncMigration為yes時。 | TiDB下遊的Kafka資訊。 |
taskType | Kafka叢集類型,根據Kafka的部署位置進行選擇。取值為:
| |
bisId |
| |
port | Kafka叢集的服務連接埠。 | |
user | Kafka叢集帳號,若Kafka未開啟驗證可不填寫。 | |
passwd | Kafka叢集密碼,若Kafka未開啟驗證可不填寫。 | |
version | Kafka叢集的版本。 | |
ssl | Kafka叢集的串連方式,取值為:
| |
topic | 遷移或同步對象所屬的Topic。 | |
host | 當taskType為EXPRESS時。 | Kafka叢集的IP地址。 |
vpcId | 當taskType為ECS時。 | ECS執行個體的專用網路。 |
目標資料庫參數配置
請根據目標資料庫類型,在Reserve中配置參數。
表 14. 目標資料庫類型為MySQL(包括RDS MySQL和自建MySQL)
參數 | 配置條件 | 說明 |
privilegeMigration | 當源和目標資料庫類型均為RDS MySQL時,詳情請參見來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)。 | 是否遷移帳號。 |
privilegeDbList | 遷移帳號的資訊。 | |
definer | 是否保留資料庫物件原有的Definer。 | |
whitelist.dms.online.ddl.enable | 當來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)或PolarDB MySQL版,且為同步或遷移執行個體時。更多資訊,請參見來源資料庫參數配置。 | 此六個參數需要配合使用,控制是否複製源表Online DDL工具執行過程的暫存資料表到目標庫。 |
sqlparser.dms.original.ddl | ||
whitelist.ghost.online.ddl.enable | ||
sqlparser.ghost.original.ddl | ||
online.ddl.shadow.table.rule | ||
online.ddl.trash.table.rule | ||
isAnalyzer | 當源和目標執行個體的資料庫類型均為MySQL(包括RDS MySQL和自建MySQL)時。 | 是否開啟遷移評估功能,評估源庫和目標庫的結構是否滿足要求。取值為true或false。 |
triggerMode | 必填 | 源庫觸發器遷移方式,取值為:
說明 更多資訊,請參見配置同步或遷移觸發器的方式。 |
destSSL | 接入方式為雲執行個體或ECS自建資料庫時。 | 目標端資料庫的串連方式,取值為:
|
src.sqlserver.schema.mapper.mode | 當來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)時。 | 源庫和目標庫結構映射模式,詳情請參見來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)。 |
表 15. 目標資料庫類型為PolarDB MySQL版
參數 | 配置條件 | 說明 |
whitelist.dms.online.ddl.enable | 當來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)或PolarDB MySQL版,且為同步或遷移執行個體時。更多資訊,請參見來源資料庫參數配置。 | 此六個參數需要配合使用,控制是否複製源表Online DDL工具執行過程的暫存資料表到目標庫。 |
sqlparser.dms.original.ddl | ||
whitelist.ghost.online.ddl.enable | ||
sqlparser.ghost.original.ddl | ||
online.ddl.shadow.table.rule | ||
online.ddl.trash.table.rule | ||
anySinkTableEngineType | 必填 | PolarDB MySQL執行個體的引擎類型,取值為:
|
triggerMode | 必填 | 源庫觸發器遷移方式,取值為:
說明 更多資訊,請參見配置同步或遷移觸發器的方式。 |
src.sqlserver.schema.mapper.mode | 當來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)時。 | 源庫和目標庫結構映射模式,詳情請參見來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)。 |
表 16. 目標資料庫類型為AnalyticDB for MySQL
參數 | 配置條件 | 說明 |
whitelist.dms.online.ddl.enable | 當來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)或PolarDB MySQL版,且為同步或遷移執行個體時。詳情請參見來源資料庫參數配置。 | 此六個參數需要配合使用,控制是否複製源表Online DDL工具執行過程的暫存資料表到目標庫。 |
sqlparser.dms.original.ddl | ||
whitelist.ghost.online.ddl.enable | ||
sqlparser.ghost.original.ddl | ||
online.ddl.shadow.table.rule | ||
online.ddl.trash.table.rule | ||
triggerMode | 必填 | 源庫觸發器遷移方式,取值為:
說明 更多資訊,請參見配置同步或遷移觸發器的方式。 |
src.sqlserver.schema.mapper.mode | 當來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)時。 | 源庫和目標庫結構映射模式,詳情請參見來源資料庫類型為SQL Server(包括RDS SQL Server和自建SQL Server)。 |
traceDatasource | 必填 | 是否開啟多表歸併,取值為true或false。 |
tagColumnValue | 設定是否自訂標籤列時。 | 是否自訂
|
adsSqlType | 需指定按執行個體層級選擇增量同步處理或遷移的SQL操作時。 | 按執行個體層級選擇增量同步處理或遷移的SQL操作,多個SQL使用英文逗號分隔,取值為:
|
表 17. 目標資料庫類型為AnalyticDB for PostgreSQL
參數 | 配置條件 | 說明 |
whitelist.dms.online.ddl.enable | 當來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)或PolarDB MySQL版,且為同步或遷移執行個體時。更多資訊,請參見來源資料庫參數配置。 | 此六個參數需要配合使用,控制是否複製源表Online DDL工具執行過程的暫存資料表到目標庫。 |
sqlparser.dms.original.ddl | ||
whitelist.ghost.online.ddl.enable | ||
sqlparser.ghost.original.ddl | ||
online.ddl.shadow.table.rule | ||
online.ddl.trash.table.rule | ||
isTargetDbCaseSensitive | 當來源資料庫類型為MySQL(包括RDS MySQL和自建MySQL)、Oracle或SQL Server資料庫(包括RDS SQL Server和自建SQL Server)時。 | 是否為目標對象添加引號,取值為true或false。 |
syncOperation | 需指定按執行個體層級選擇增量同步處理或遷移的SQL操作時。 | 按執行個體層級選擇增量同步處理或遷移的SQL操作,多個SQL使用英文逗號分隔,取值為:
|
表 18. 目標資料庫類型為RDS MariaDB
參數 | 配置條件 | 說明 |
triggerMode | 必填 | 源庫觸發器遷移方式,取值為:
說明 更多資訊,請參見配置同步或遷移觸發器的方式。 |
destSSL | 接入方式為雲執行個體或ECS自建資料庫時。 | 目標端資料庫的串連方式,取值為:
|
表 19. 目標資料庫類型為MongoDB(包括ApsaraDB for MongoDB和自建MongoDB)
參數 | 配置條件 | 說明 |
destEngineArchType | 必填 | 目標MongoDB資料庫的架構類型,取值為:
|
表 20. 目標資料庫類型為Tair/Redis
包含雲資料庫Tair(相容Redis)和自建Redis。
參數 | 配置條件 | 說明 |
destKvStoreMode | 資料庫執行個體的接入方式不為雲執行個體時。 | 目標自建Redis的執行個體模式,取值為:
|
any.sink.redis.expire.extension.seconds | 必填 | 源庫中的Key遷移到目標庫時額外延長的到期時間。為保障資料的一致性,如有使用到(包括但不限於)如下命令,建議設定延長Key的到期時間為600秒以上。
|
表 21. 目標資料庫類型為PolarDB PostgreSQL版(相容Oracle)
參數 | 配置條件 | 說明 |
destHostPortCtl | 接入方式為公網IP時。 | PolarDB PostgreSQL版(相容Oracle)是否選擇多來源資料,取值為:
|
destHostPorts | 當destHostPortCtl為multiple時。 | 目標PolarDB PostgreSQL版(相容Oracle)節點的IP地址和連接埠號碼資訊,多個 |
表 22. 目標資料庫類型為Oracle
參數 | 配置條件 | 說明 |
destOracleType | 必填 | Oracle執行個體的類型,取值為:
|
表 23. 目標資料庫類型為DataHub
參數 | 配置條件 | 說明 |
isUseNewAttachedColumn | 必填 | 附加列命名規則如下:
|
表 24. 目標資料庫類型為MaxCompute
參數 | 配置條件 | 說明 |
isUseNewAttachedColumn | 必填 | 附加列命名規則如下:
|
partition | 必填 | 增量日誌表分區名稱,取值為:
|
表 25. 目標資料庫類型為Elasticsearch
參數 | 配置條件 | 說明 |
indexMapping | 必填 | 在目標Elasticsearch執行個體中建立的索引名稱,取值為:
|
表 26. 目標資料庫類型為Kafka
參數 | 配置條件 | 說明 |
destTopic | 必填 | 目標Kafka叢集中遷移或同步對象所屬Topic。 |
destVersion | 必填 | 目標Kafka叢集的版本,取值為1.0、0.9、0.10。 說明 如Kafka叢集版本為1.0及以上,則需傳入1.0。 |
destSSL | 必填 | 串連目標Kafka叢集的方式,取值為:
|
sink.kafka.ddl.topic | 需要指定用於儲存DDL資訊的Topic時。 | 用於儲存DDL資訊的Topic。如果未輸入,DDL資訊預設儲存在destTopic輸入的Topic中。 |
kafkaRecordFormat | 必填 | 資料投遞到目標Kafka叢集中的儲存格式,取值為:
說明 更多格式說明,請參見訊息佇列中的資料存放區格式。 |
destKafkaPartitionKey | 必填 | Kafka Partition(分區)同步策略,取值為:
說明 更多分區同步策略說明,請參見Kafka Partition同步策略說明。 |
destSchemaRegistry | 必填 | 是否使用Kafka Schema Registry,取值為yes或no。 |
destKafkaSchemaRegistryUrl | 當destSchemaRegistry為true時。 | Avro Schema在Kafka Schema Registry註冊的URL或IP。 |