跳到主要内容

任务预检(详细)

接口描述

任务信息详细校验,包括字符集数据权限元数据是否存在

接口地址

/cloudcanal/console/api/v1/openapi/datajob/precheckdetail

请求方式

POST

请求参数

参数名称参数说明请求类型是否必须数据类型
clusterId链接数据源的集群idbodylong
srcDsId源端数据源idbodylong
srcHostType源数据源host类型

PRIVATE
PUBLIC
bodyString
srcSchema源端库表描述,详见 数据源schema说明bodyString
dstDsId目标数据源idbodylong
dstHostType目标数据源host类型

PRIVATE
PUBLIC
bodyString
dstSchema目标库表描述,可由 srcSchema 配合 mappingDef 计算得出,可为空bodyString
mappingDef库表映射,详见 映射规则说明bodyString
jobType任务类型,可通过 获取任务类型 接口查询获取bodyString
initialSync如果是数据同步任务,是否需要初始化数据(全量迁移)bodyBoolean
shortTermNum如果有短期同步,持续多少天bodyint
shortTermSync如果是数据迁移任务,是否需要短期同步bodyBoolean
specId规格idbodyint
fullPeriod是否是周期性全量迁移bodyBoolean
fullPeriodCronExpr周期性全量迁移 CronTab 表达式bodyString
autoStart是否自动启动bodyBoolean
checkOnce增量追上后是否做一次全量数据校验bodyBoolean
checkPeriod是否是周期性校验bodyBoolean
checkPeriodCronExpr周期性校验 CronTab 表达式bodyString

公共响应结果

参数名称参数说明类型(java)不为空
code1:成功 0:失败string
dataobject
msgstring
requestIdstring

data 参数说明

data 是一个数组,数组里面每一项表示一个检查项,检查项参数说明如下

参数名称参数说明类型(java)不为空
title测试项名称Long
passRequirement测试项通过需要的条件String
varName参数名称String
varRequireValues参数需要符合的值String
varActualValue参数实际值String
preCheckType校验类型

CONNECTIVITY(可连接性)
VERSION(版本)
BINLOG_EXISTENCE(增量日志是否存在)
PRIVILEGES(权限)
STRUCT_TABLE_STORAGE(表存储)
STRUCT_TABLE_PK(主键)
STRUCT_TABLE_CHARSET(表字符集)
STRUCT_TABLE_COLLATION(表校验集)
STRUCT_TABLE_FK(外键)
STRUCT_EXISTENCE(库表列是否存在)
VARIABLES(数据库参数)
SPEC_SCHEDULE_SUPPORT(容量是否足够)
INCREMENT_BALANCE(增量license)
FULL_BALANCE(全量任务license)
CHECK_BALANCE(校验任务license)
STRUCT_BALANCE(结构迁移license)
NAME_LENGTH(元数据名字长度)
INDEX_COLUMN(索引列)
COLUMN_TYPE(列类型)
VERSION_COMPATIBILITY(版本兼容度)
String
success该项是否预检成功String
checked该项是否已经预检int
contextDbName检查所关联的dbint
contextTableName检查所关联的表String
contextColumnName检查所关联的列String

响应示例

{
"requestId": "282a9033-2c26-11ec-9577-adaf6efb66da",
"code": "1",
"msg": "request success",
"data": [
{
"title": "源端库表结构检查",
"passRequirement": "所选库/表/字段需要在数据库中(除待建库/表/字段)",
"varName": null,
"varRequireValues": null,
"varActualValue": null,
"preCheckType": "STRUCT_EXISTENCE",
"success": true,
"checked": true,
"contextDbName": null,
"contextTableName": null,
"contextColumnName": null
},
{
"title": "源端表字符集检查",
"passRequirement": "仅支持'utf8','utf8mb4'字符集",
"varName": null,
"varRequireValues": [
"utf8",
"utf8mb4"
],
"varActualValue": "utf8mb4",
"preCheckType": "STRUCT_TABLE_CHARSET",
"success": true,
"checked": true,
"contextDbName": "dingtax",
"contextTableName": "worker_stats",
"contextColumnName": null
},
{
"title": "源端外键检查",
"passRequirement": "不支持跨库的外键约束",
"varName": null,
"varRequireValues": null,
"varActualValue": null,
"preCheckType": "STRUCT_TABLE_FK",
"success": true,
"checked": true,
"contextDbName": "dingtax",
"contextTableName": "proc_table_ref",
"contextColumnName": null
},
{
"title": "源端表存储格式检查",
"passRequirement": "只支持'InnoDB'格式",
"varName": null,
"varRequireValues": [
"InnoDB",
"XENGINE",
"MyISAM"
],
"varActualValue": "InnoDB",
"preCheckType": "STRUCT_TABLE_STORAGE",
"success": true,
"checked": true,
"contextDbName": "dingtax",
"contextTableName": "worker_stats",
"contextColumnName": null
},
{
"title": "binlog 文件存在性检查",
"passRequirement": "\"show master status\" 显示的 binlog 文件需要在数据库中",
"varName": null,
"varRequireValues": null,
"varActualValue": null,
"preCheckType": "BINLOG_EXISTENCE",
"success": true,
"checked": true,
"contextDbName": null,
"contextTableName": null,
"contextColumnName": null
}
]
}