华为云用户手册

  • DRS权限 默认情况下,管理员创建的 IAM 用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 DRS部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京四)对应的项目(cn-north-4)中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问DRS时,需要先切换至授权区域。 根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对E CS 服务,管理员能够控制IAM用户仅能对某一类云服务器资源进行指定的管理操作。多数细粒度策略以API接口为粒度进行权限拆分。 如表1所示,包括了DRS的所有系统权限。 表1 DRS系统权限 策略名称/系统角色 描述 类别 依赖关系 Security Administrator 安全管理员。 为了提高 数据复制服务 的可用性,您需要在正式使用数据复制服务之前,在 统一身份认证 服务用户组管理中添加Security Administrator全局权限,避免由于权限问题造成某些功能不可用,如定时启动任务、全量完成自动结束、自动重试失败任务等自动功能。如果自动功能不可用,可参考常见问题DRS创建任务后执行自动功能失败。 系统角色 无。 DRS Administrator 数据复制服务的管理员。 该权限为使用数据复制服务时必须添加的基础权限。 系统角色 依赖Tenant Guest、Server Administrator和RDS Administrator角色。 Tenant Guest:项目级角色,在同项目中勾选。 Server Administrator:项目级角色,在同项目中勾选。 RDS Administrator:RDS管理员,属于项目级角色,在同项目中勾选。 DRS FullAccess 数据复制服务所有执行权限。 系统策略 依赖VPC FullAccess、RDS ReadOnlyAccess、 SMN Administrator、OBS Administrator、EPS ReadOnlyAccess策略。 VPC FullAccess:选择VPC、子网需要配置。 RDS ReadOnlyAccess:选择RDS需要配置。 SMN Administrator: 消息通知 需要配置。 OBS Administrator:备份任务选择桶信息需要配置。 EPS ReadOnlyAccess:选择企业项目时需要配置。 如果为包周期任务需要配置如下权限: BSS Operator或BSS Administrator DRS ReadOnlyAccess 数据复制服务资源只读权限。 系统策略 根据选择需要配置如下策略: RDS ReadOnlyAccess:选择RDS需要配置。 SMN Administrator:消息通知需要配置。 DRS FullWithOutDeletePermission 数据复制服务除删除外的所有权限 系统策略 依赖VPC FullAccess、RDS ReadOnlyAccess、SMN Administrator、OBS Administrator策略。 VPC FullAccess:选择VPC、子网需要配置。 RDS ReadOnlyAccess:选择RDS需要配置。 SMN Administrator:消息通知需要配置。 OBS Administrator:备份任务选择桶信息需要配置。 如果为包周期任务需要配置如下权限: BSS Operator或BSS Administrator 除了以上权限外,还需要根据选择配置对应数据库实例的读权限,例如界面选择DDM需要配置DDM ReadOnlyAccess权限,选择DDS需要配置DDS ReadOnlyAccess权限。 表2列出了数据复制服务常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。 表2 常用操作与系统权限的关系 操作 DRS FullAccess DRS ReadOnlyAccess DRS Administrator DRS FullWithOutDeletePermission 创建任务 √ x √ √ 编辑任务 √ x √ √ 删除任务 √ x √ x 启动任务 √ x √ √ 重试任务 √ x √ √ 结束任务 √ x √ √ 表3列出了DRS常用操作以及对应的授权项,您可以参照该表自定义配置权限策略。 表3 常用操作与对应的授权项 权限 授权项 备注 查询RPO和RTO drs:dataGuardJob:list 无。 主备倒换 drs:disasterRecoveryJob:switchover 无。 任务操作 drs:migrationJob:action 需要在项目上配置VPC FullAccess权限。 需要配置对应实例的读权限,例如数据库为RDS,需要配置RDS ReadOnlyAccess权限,为DDS需要配置DDS ReadOnlyAccess权限。 备份任务需要配置OBS Administrator权限。 终止迁移任务 drs:migrationJob:terminate 需要在项目上配置如下权限: VPC FullAccess RDS ReadOnlyAccess 备份任务需要配置如下权限: OBS Administrator 消息通知需要配置如下权限: SMN Administrator 修改迁移任务 drs:migrationJob:modify 界面选择VPC、子网需要配置如下权限: VPC FullAccess 需要配置对应实例的读权限,例如界面选择RDS需要配置RDS ReadOnlyAccess权限,选择DDS需要配置DDS ReadOnlyAccess权限。 消息通知需要配置如下权限: SMN Administrator 创建迁移任务 克隆任务 drs:migrationJob:create 界面选择VPC、子网需要配置如下权限: VPC FullAccess 需要配置对应实例的读权限,例如界面选择RDS需要配置RDS ReadOnlyAccess权限,选择DDS需要配置DDS ReadOnlyAccess权限。 消息通知需要配置如下权限: SMN Administrator 如果为包周期任务需要配置如下权限: BSS Operator或BSS Administrator 删除迁移任务 drs:migrationJob:delete 无。 更新迁移用户信息 drs:migrationJob:modifyUserInfo 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 迁移速度控制 drs:migrationJob:setMigrationTransSpeed 无。 修改数据库参数 drs:dataBaseParams:modify 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 更新数据加工信息 drs:dataTransformation:update 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 添加数据加工信息 drs:dataTransformation:add 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 删除数据加工数据接口 drs:dataTransformation:delete 无。 更新数据库对象选择信息 drs:migrationJob:update 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 更新同步任务忽略策略 drs:synchronizationJob:update 无。 更新任务配置 drs:migrationJob:updateJobConfig 无。 更新过滤DDL策略 drs:migrationJob:updateDDLPolicy 无。 修改对比策略 drs:healthCompare:modify 无。 停止对比任务 drs:healthCompare:stop 无。 创建对象级表对比任务 drs:migrationCompareJob:create 无。 取消数据级表对比任务 drs:migrationCompareJob:delete 无。 立即启动数据级表对比任务 drs:migrationCompareJob:start 无。 创建订阅任务 drs:subscriptionJob:create 界面选择RDS实例需要配置如下权限: RDS ReadOnlyAccess 消息通知需要配置如下权限: SMN Administrator 在项目上需要配置如下权限: VPC FullAccess 修改订阅任务 drs:subscriptionJob:update 界面选择RDS实例需要配置如下权限: OBS Administrator RDS ReadOnlyAccess 消息通知需要配置如下权限: SMN Administrator 在项目上需要配置如下权限: VPC FullAccess 编辑订阅任务信息 drs:subscriptionJob:edit 界面选择桶、RDS实例需要配置如下权限: OBS Administrator RDS ReadOnlyAccess 消息通知需要配置如下权限: SMN Administrator 还需要配置如下权限: VPC FullAccess 删除订阅任务 drs:subscriptionJob:delete 无。 操作订阅任务 drs:subscriptionJob:subscribe 需要在项目上配置如下权限: VPC FullAccess RDS ReadOnlyAccess 备份任务需要配置如下权限: OBS Administrator 消息通知需要配置如下权限: SMN Administrator 修改消费时间点 drs:subscriptionJob:UpdateConsumeTime 无。 创建备份迁移任务v2.0 drs:backupMigrationJob:create 界面选择桶、RDS实例需要配置如下权限: OBS Administrator RDS ReadOnlyAccess 消息通知需要配置如下权限: SMN Administrator 删除备份迁移任务 drs:backupMigrationJob:delete 无。 修改备份迁移任务信息 drs:backupMigrationJob:modify 界面选择桶、RDS实例需要配置如下权限: OBS Administrator RDS ReadOnlyAccess 消息通知需要配置如下权限: SMN Administrator 冻结解冻 drs:frozenOrUnfreezeJob:frozen 无。 资源清理 drs:cleanJob:clean 需要配置VPC FullAccess权限。 校验备份任务名称 drs:backupMigrationJob:check 无。 校验数据加工 drs:dataTransformation:check 无。 校验在线任务名称 drs:migrationJob:check 无。 获取数据库参数 drs:databaseParameters:get 无。 查询备份迁移任务列表 drs:backupMigrationJob:list 无。 查询备份迁移任务详细信息 drs:backupMigrationJob:get 无。 获取订阅任务详情 drs:subscriptionJob:get 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 查询操作结果 drs:job:getResult 无。 获取任务价格信息 drs:migrationJob:getMeteringPrice 无。 查询数据加工信息 drs:migrationTransformationJob:get 无。 获取任务预检查结果 drs:precheckJob:get 无。 获取对象级迁移对比概览 drs:compareJob:getOverview 无。 查询数据级表对比任务列表 drs:compareJob:list 无。 查询数据级表对比任务结果 drs:compareJob:getResult 无。 获取对象级迁移对比详细信息 drs:compareJob:getDetails 无。 查询数据级表对比任务详细信息 drs:compareJob:getContentsInfo 无。 查询对比任务预估时间 drs:compareJob:getEstimateTime 无。 查询内容对比总览 drs:compareJob:getContentOverview 无。 查询行数对比总览 drs:compareJob:getLineOverview 无。 查询行数对比详情 drs:compareJob:getLineDetail 无。 获取用户对比详情 drs:compareJob:getAccountDetails 无。 查询内容对比详情 drs:compareJob:getContentDetail 无。 查询内容对比差异 drs:compareJob:getContentDiff 无。 获取在线迁移任务列表 drs:migrationJob:list 无。 获取在线迁移任务详情 drs:migrationJob:get 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 获取对象级迁移对比概览 drs:migrationJob:getCompareStruct 无。 获取数据级流式对比 drs:migrationJob:getStreamComparison 无。 获取源库迁移用户列表 drs:migrationJob:getSrcUsers 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 获取指定任务迁移进度 drs:migrationJob:getSpecifiedProgress 无。 获取指定任务数据库影响时间 drs:migrationJob:getEffectTime 无。 查询迁移进度 drs:migrationJobs:getProgress 无。 查询健康对比报告列表 drs:healthCompareJob:list 无。 获取对象级迁移对比概览 drs:healthCompareJob:getOverview 无。 获取对象级对比详细信息 drs:healthCompareJob:getObjectDetail 无。 获取用户对比详情 drs:healthCompareJob:getAccountDetails 无。 查询行数对比详情 drs:healthCompareJob:getLineDetail 无。 查询对比策略 drs:healthCompareJob:getComparePolicy 无。 获取容灾监控数据 drs:disasterRecoveryJob:get 需要配置如下权限: CES ReadOnlyAccess 获取指定任务的RPO&RTO drs:dataGuardJob:list 无。 获取回放故障列表 drs:replayFaultsJob:list 无。 数据加工 drs:migrationJob:action 需要配置对应实例的读权限,例如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 启动任务 drs:migrationJob:action 需要配置VPC FullAccess权限。 查询任务详情 drs:migrationJob:get 需要配置对应实例读权限,比如数据库为RDS时,需要在项目上配置RDS ReadOnlyAccess权限。 查询任务状态 drs:migrationJob:get 无。 查询资源标签 drs:tag:get 无。 删除资源标签 drs:tags:delete 无。 添加资源标签 drs:tag:add 无。 修改资源标签 drs:tag:modify 无。 获取迁移日志 drs:migrationJob:getLog 无。 查询涉及到的kafka的topic信息 drs:kafkaJob:get 无。 获取支持特性列表 drs:supportFeature:get 无。 查询特性白名单 drs:featureWhiteJob:list 无。 查询需调整的配额 drs:quota:adjust 无。 更新配额 drs:quota:update 无。 查询配额 drs:quota:get 无。 更新用户指引 drs:userGuide:update 无。 获取用户指引详情 drs:userGuide:list 无。 查询预定义标签 - 查询预定义标签需要配置: tms:resourceTags:list 查询配置日志组 - 查询配置日志组需要配置: lts:groups:get 查询配置日志流 - 查询配置日志流需要配置: lts:topics:get 获取实时同步任务列表 drs:synchronizationJob:list 无。 获取实时同步任务详情 drs:synchronizationJob:get 无。 获取实时灾备任务详情 drs:dataGuardJob:get 无。 获取数据订阅任务列表 drs:subscriptionJob:list 无。 获取录制回放任务列表 drs:replayJob:list 无。 获取录制回放任务详情 drs:replayJob:get 无。
  • 目标数据库所在安全组 目标数据库所在VPC安全组入方向规则需要放DRS实例IP和目标数据库自身的端口,允许DRS实例通过端口访问。 在RDS的“实例管理”页面,单击目标实例名称。 进入“基本信息”页签,在“连接信息”模块下,单击安全组。 进入安全组基本信息页,选择“入方向规则”页签。 单击“添加规则”进行配置。 目标数据库所在VPC安全组入方向规则需要放DRS实例IP和目标数据库自身的端口(IP地址和端口只要包含DRS的IP和自身的端口即可)。
  • 源数据库所在安全组 源数据库所在VPC安全组入方向规则需要放DRS实例IP和源数据库自身的端口,允许DRS实例通过端口访问。 在RDS的“实例管理”页面,单击目标实例名称。 进入“基本信息”页签,在“连接信息”模块下,单击安全组。 进入安全组基本信息页,选择“入方向规则”页签。 单击“添加规则”进行配置。 源数据库所在VPC安全组入方向规则需要放DRS实例IP和源库自身的端口(IP地址和端口只要包含DRS的IP和自身的端口即可)。
  • DRS实例所在安全组设置 DRS实例所在VPC安全组出方向规则需要放通源数据库和目标数据库的IP、端口,允许DRS实例访问安全组外的数据库。 在任务列表中,单击DRS任务名称。 进入“基本信息”页签,在“实例信息”模块下,单击内网安全组。 进入安全组基本信息页,选择“出方向规则”页签。 单击“添加规则”进行配置。 DRS实例所在VPC安全组出方向规则需要放通源数据库和目标数据库的IP、端口(IP地址和端口只要包含目标数据库和源数据库的IP和端口即可)。
  • MySQL 为了确保用户数据库成功迁移到本云关系型数据库MySQ L实例 ,创建迁移任务时,数据复制服务自动为目标数据库实例创建drsFull和drsIncremental临时账户,任务结束后,数据复制服务会自动删除这两个账户。 禁止使用用户自建的drsFull和drsIncrementa账号作为DRS任务连接数据库的账号。 删除、重命名和修改这些账户的密码和权限,会导致任务出错。 表1 MySQL实例创建的数据库账户 账户 使用场景 Host 说明 drsFull 全量迁移 关系型数据库MySQL实例 用户启动全量迁移任务时,系统会在目标数据库中添加该账户,用于迁移数据。 drsIncremental 增量迁移 关系型数据库MySQL实例 用户启动增量迁移任务时,系统会在目标数据库中添加该账户,用于迁移数据。
  • 数据复制服务是否支持关系型数据库的HA实例迁移 数据复制服务的高可用性保障机制,可以支持关系型数据库的单实例和HA实例的迁移。针对HA实例的迁移,DRS的自动重连技术在连接短暂中断后连接可以得到修复,断点续传技术,根据数据库内部连续性标志可以确保实时同步的连续性和一致性。 源数据库的HA设计,满足浮动IP连接效果,且倒换时RPO=0,则DRS完全支持数据库的HA实例迁移,无需人工介入。 源数据库的HA设计,不能满足浮动IP连接且倒换时RPO=0时,存在以下几种情况: 使用浮动IP,但不能保证倒换时RPO=0时,可以连接,但DRS会识别出数据断层(如果有主备倒换出现数据丢失的话)并提示任务失败,此时只能根据新的数据情况,使用重置功能重新迁移。 使用固定IP,且倒换时RPO=0时,支持迁移(只有在实例正常运行的情况下支持迁移,否则不支持)。 使用固定IP,且不能保证切换时RPO=0时, 可以连接,但DRS会识别出数据断层并提示任务失败,此时只能根据新的数据情况,使用重置功能重新迁移。 出云迁移且目标端数据库为HA实例时,DRS可以保证源的数据完整的迁移到目标数据库,但由于目标数据库本身的倒换不能保证RPO=0,则目标数据库可能会出现数据断层的情况。 父主题: 产品咨询
  • 如何判断数据迁移任务可以停止 您可参考以下方法,确认任务是否可以结束。结束之前您需要确认完成以下几点: 请您确认至少在业务低峰期有过一次完整的数据对比。 完成业务割接。 先中断业务(如果业务负载非常轻,也可以尝试不中断业务)。 在源数据库端执行如下语句(此处以MySQL为例),并观察在1-5分钟内若无任何新会话执行SQL ,则可认为业务已经完全停止。 show processlist; 上述语句查询到的进程列表中,包括DRS迁移实例的连接,您需要确认除DRS迁移实例的连接外无任何新会话执行SQL,即可认为业务已经完全停止。 同步时延为0,并稳定保持一段时间;同时,您可以使用数据级对比功能,进行割接前的最后一次数据级对比,耗时可参考之前的对比记录。 如果时间允许,则选择全部对比。 如果时间不允许,则推荐对比活跃表,关键业务表,第二步对比多次存在差异的表等。 确定系统割接时机,业务系统指向目标数据库,业务对外恢复使用。 结束迁移任务,该操作仅删除了迁移实例,迁移任务仍显示在任务列表中,您可以进行查看或删除。 父主题: 实时迁移
  • 实时迁移 实时迁移是指在数据复制服务能够同时连通源数据库和目标数据库的情况下,只需要配置迁移的源、目标数据库实例及迁移对象即可完成整个数据迁移过程,再通过多项指标和数据的对比分析,帮助确定合适的业务割接时机,实现最小化业务中断的数据库迁移。 实时迁移支持多种网络迁移方式,如:公网网络、VPC网络、VPN网络和专线网络。通过多种网络链路,可快速实现跨云平台数据库迁移、云下数据库迁移上云或云上跨区域的数据库迁移等多种业务场景迁移。 特点:通过增量迁移技术,能够最大限度允许迁移过程中业务继续对外提供使用,有效的将业务系统中断时间和业务影响最小化,实现数据库平滑迁移上云,支持全部数据库对象的迁移。 图1 实时迁移
  • 实时同步 实时同步是指在不同的系统之间,将数据通过同步技术从一个数据源拷贝到其他数据库,并保持一致,实现关键业务的数据实时流动。 实时同步不同于迁移,迁移是以整体数据库搬迁为目的,而实时同步是维持不同业务之间的数据持续性流动。 常用场景:实时分析,报表系统,数仓环境。 特点:实时同步功能聚焦于表和数据,并满足多种灵活性的需求,例如多对一、一对多,动态增减同步表,不同表名之间同步数据等。 图3 多对一实时同步
  • 录制回放 录制回放是指将源数据库发生的真实业务流量,在目标数据库模拟执行,从而观察和检验目标数据库的功能和性能表现。 录制回放主要分为录制、回放两个阶段,录制过程是从源数据库上将所需时间段内的全部SQL原语句(包括增、删、改、查)通过binlog下载、录制工具等进行采集,以文件形式缓存起来,并往目标数据库注入模拟数据,等待用户执行回放;用户可以在DRS任务上手工触发回放,观察目标数据库的性能表现。 常用场景: 数据库搬迁前,通过录制回放可以提前得知源业务在目标数据库的运行效果。 通过控制录制回放的线程及回放速度,来模拟源业务流量放大的效果,从而分析目标数据库对于未来业务激增时的稳定性表现。 图6 录制回放
  • HA管理 针对主机故障,系统会自动将迁移实例或者同步实例切换到备机继续进行任务,以提高任务的成功率。 对于如下状态的迁移任务,在迁移实例或者同步实例发生故障无法正常完成任务的情况下,系统会自动执行重启迁移实例或者同步实例的操作,然后下发重试任务的命令,此时任务状态会变为故障恢复。如果重启后,迁移实例或者同步实例还处于故障无法正常完成任务时,则系统需要重新创建迁移实例或者同步实例,创建完成后自动重试任务。 全量迁移 增量迁移 全量同步 增量同步
  • 区域和可用区 我们用区域和可用区来描述数据中心的位置,您可以在特定的区域、可用区创建资源。 区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 图1阐明了区域和可用区之间的关系。 图1 区域和可用区 目前,华为云已在全球多个地域开放云服务,您可以根据需求选择适合自己的区域和可用区。更多信息请参见华为云全球站点。
  • 临时账户 为了确保用户数据库成功迁移到关系型数据库MySQL实例,创建迁移任务时,数据复制服务自动为目标数据库实例创建drsFull和drsIncremental临时账户,分别用于全量迁移和增量迁移。任务结束后,数据复制服务会自动删除这两个账户。 禁止使用用户自建的drsFull和drsIncrementa账号作为DRS任务连接数据库的账号。 删除、重命名和修改临时账户的密码和权限,会导致任务出错。
  • 统一身份认证服务 统一身份认证服务(Identity and Access Management,简称IAM)为数据复制服务提供了权限管理功能。 需要拥有数据复制服务的Administrator权限后,您才能使用数据复制服务。如需开通该权限,请联系拥有Security Administrator权限的用户,或者申请具有数据复制服务Administrator权限的新用户。 统一身份认证服务的更多信息,请参见《统一身份认证服务用户指南》。
  • 录制回放 录制回放是指将源数据库发生的真实业务流量,在目标数据库模拟执行,从而观察和检验目标数据库的功能和性能表现。 录制回放主要分为录制、回放两个阶段,录制过程是从源数据库上将所需时间段内的全部SQL原语句(包括增、删、改、查)通过binlog下载、录制工具等进行采集,以文件形式缓存起来,并往目标数据库注入模拟数据,等待用户执行回放;用户可以在DRS任务上手工触发回放,观察目标数据库的性能表现。 常用场景: 数据库搬迁前,通过录制回放可以提前得知源业务在目标数据库的运行效果。 通过控制录制回放的线程及回放速度,来模拟源业务流量放大的效果,从而分析目标数据库对于未来业务激增时的稳定性表现。 图6 录制回放
  • 实时同步 实时同步是指在不同的系统之间,将数据通过同步技术从一个数据源拷贝到其他数据库,并保持一致,实现关键业务的数据实时流动。 实时同步不同于迁移,迁移是以整体数据库搬迁为目的,而实时同步是维持不同业务之间的数据持续性流动。 常用场景:实时分析,报表系统,数仓环境。 特点:实时同步功能聚焦于表和数据,并满足多种灵活性的需求,例如多对一、一对多,动态增减同步表,不同表名之间同步数据等。 图3 多对一实时同步
  • 实时迁移 实时迁移是指在数据复制服务能够同时连通源数据库和目标数据库的情况下,只需要配置迁移的源、目标数据库实例及迁移对象即可完成整个数据迁移过程,再通过多项指标和数据的对比分析,帮助确定合适的业务割接时机,实现最小化业务中断的数据库迁移。 实时迁移支持多种网络迁移方式,如:公网网络、VPC网络、VPN网络和专线网络。通过多种网络链路,可快速实现跨云平台数据库迁移、云下数据库迁移上云或云上跨区域的数据库迁移等多种业务场景迁移。 特点:通过增量迁移技术,能够最大限度允许迁移过程中业务继续对外提供使用,有效的将业务系统中断时间和业务影响最小化,实现数据库平滑迁移上云,支持全部数据库对象的迁移。 图1 实时迁移
  • 请求示例 更新租户指定ID任务对象信息 https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/jobs/c7debc9c-8e09-4a5d-8dd6-cc44f78jb20r { "job" : { "type" : "db_object", "params" : { "db_object" : { "object_scope" : "table", "target_root_db" : { "db_name" : "mytest", "db_encoding" : "utf8" }, "object_info" : { "TEST1" : { "name" : "TEST1", "tables" : { "TBL_1" : { "name" : "TBL_1", "type" : "table", "all" : true, "is_synchronized" : false }, "TBL_2" : { "name" : "TBL_2", "type" : "table", "all" : true, "is_synchronized" : false } } }, "TEST2" : { "name" : "TEST2", "all" : true, "tables" : { "WT_1" : { "name" : "WT_1", "type" : "table", "all" : true, "is_synchronized" : false }, "WT_2" : { "name" : "WT_2", "type" : "table", "all" : true, "is_synchronized" : false } } } } } } } } 更新租户指定ID任务名称为DRS-1234。 https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/jobs/c7debc9c-8e09-4a5d-8dd6-cc44f78jb20r { "job" : { "type" : "name", "params" : { "base_info" : { "name" : "DRS-1234" } } } } 更新任务源库、目标库的信息。 https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/jobs/c7debc9c-8e09-4a5d-8dd6-cc44f78jb20r { "job" : { "type" : "endpoint", "params" : { "source_endpoint" : [ { "db_type" : "oracle", "endpoint_type" : "offline", "endpoint_role" : "so", "endpoint" : { "id" : "f59e6118-da89-4fdb-9b98-65f56709928a", "endpoint_name" : "oracle", "ip" : "10.154.217.239", "db_port" : "1521", "db_user" : "ORACLE_USER", "db_name" : "serviceName.orcl", "db_password" : "******" }, "ssl" : { "ssl_link" : false } } ], "target_endpoint" : [ { "db_type" : "gaussdbv5", "endpoint_type" : "cloud", "endpoint_role" : "ta", "endpoint" : { "id" : "10deb576-8885-473b-a213-4d76e668dc0d", "endpoint_name" : "cloud_gaussdbv5", "instance_id" : "c2c7579bc09c490b9d8009db715aeb0ain14", "db_user" : "root", "db_password" : "******" }, "cloud" : { "region" : "cn-north-4", "project_id" : "9dc8c0f3f74c4dbb23c29cf0318ee561", "az_code" : "cn-north-4a,cn-north-4g,cn-north-4c" }, "vpc" : { "vpc_id" : "2cb5d364-ae63-4fbb-85b7-7d59f4a88f8f", "subnet_id" : "2cb54324-ae63-4fbb-85b7-7d59f4a88f8f", "security_group_id" : "039a3s89-665a-43e2-9b4f-bda7d9ee148d" } } ] } } }
  • 响应参数 状态码: 200 表35 响应Body参数 参数 参数类型 描述 error_code String 错误码。 最小长度:12 最大长度:12 error_msg String 错误描述。 最小长度:1 最大长度:512 id String 任务ID。 name String 任务名称。 status String 操作结果。 状态码: 400 表36 响应Body参数 参数 参数类型 描述 error_code String 错误码。 最小长度:12 最大长度:12 error_msg String 错误描述。 最小长度:1 最大长度:512
  • 响应参数 状态码: 200 表6 响应Body参数 参数 参数类型 描述 results Array of objects 批量测试连接响应体集合。 详情请参见表7。 count Integer 总记录数。 表7 results字段数据结构说明 参数 参数类型 描述 id String 任务ID。 status String 测试结果。取值: success:表示成功。 failed:表示失败。 error_code String 错误码。 error_msg String 错误信息。 success Boolean 是否成功。
  • 请求示例 DDS实时迁移任务,目标库为DDS实例测试连接 https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-connection { "jobs" : [ { "id" : "140b5236-88ad-43c8-811c-1268453jb101", "ip" : "192.168.4.66:8635,192.168.4.83:8635", "net_type" : "eip", "db_type" : "mongodb", "db_port" : 0, "db_user" : "root", "db_password" : "********", "inst_id" : "3cadd5a0ef724f55ac7fa5bcb5f4fc5fin02", "project_id" : "0549a6a31000d4e82fd1c00c3d6f2d76", "region" : "cn-xianhz-1", "end_point_type" : "ta" } ] } MySQL实时迁移任务,目标库为RDS for MySQL测试连接 https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-connection { "jobs" : [ { "id" : "140b5236-88ad-43c8-811c-1268453jb101", "ip" : "192.168.0.131", "net_type" : "eip", "db_type" : "mysql", "db_port" : 3306, "db_user" : "root", "db_password" : "********", "inst_id" : "e05a3679efe241d8b5dee80b17c1a863in01", "project_id" : "054ba152d480d55b2f5dc0069e7ddef0", "region" : "cn-xianhz-1", "end_point_type" : "ta" } ] } MySQL实时迁移任务,源库为非RDS实例测试连接 https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-connection { "jobs" : [ { "id" : "140b5236-88ad-43c8-811c-1268453jb101", "ip" : "192.168.0.27", "net_type" : "eip", "db_type" : "mysql", "db_port" : 3306, "db_user" : "root", "db_password" : "********", "ssl_link" : false, "end_point_type" : "so" } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 指定类型为application/json。 缺省值:application/json X-Auth-Token 是 String 从IAM服务获取的用户Token。 X-Language 否 String 请求语言类型。 缺省值:en-us 取值: en-us zh-cn 表3 请求Body参数 参数 是否必选 参数类型 描述 jobs 是 Array of objects 批量测试连接请求列表。 详情请参见表4。 表4 jobs字段数据结构说明 参数 是否必选 参数类型 描述 id 是 String DRS任务ID,可以从任务列表或者任务详情页面获取。 net_type 是 String 网络类型。取值: vpn vpc eip db_type 是 String 数据库类型。取值: mysql:MySQL mongodb:MongoDB gaussdbv5: GaussDB 分布式版 taurus:TaurusDB gaussdbv5ha:GaussDB集中式版 kafka:Kafka postgresql:PostgreSQL oracle:Oracle ip 是 String 数据库IP。 db_port 否 Integer 数据库端口,Mongo、DDS必填为0。 inst_id 否 String 数据库实例ID。数据库为云上实例时,比如RDS实例时必填。 db_user 是 String 数据库账号。 db_password 是 String 数据库密码。 ssl_link 否 Boolean 是否SSL安全连接,该参数为true时,需填写SSL证书相关信息参数。 ssl_cert_key 否 String SSL证书内容,获取SSL证书后将内容通过BASE64加密后所得的字符串,ssl_link为true时必填。 ssl_cert_name 否 String SSL证书名字,ssl_link为true时必填。 ssl_cert_check_sum 否 String SSL证书内容checksum值,获取SSL证书后将内容经过SHA256加密后的值,后端校验,ssl_link为true时必填。 ssl_cert_password 否 String SSL证书密码,证书文件后缀为.p12,需要密码。 vpc_id 否 String 数据库所在虚拟私有云ID,网络类型为VPC时必填。 subnet_id 否 String 数据库所在子网ID,网络类型为VPC时必填。 end_point_type 是 String 源库:so,目标库:ta。 缺省值:so 取值: so ta region 否 String 数据库实例所在Region,数据库为云上实例时,比如RDS实例时必填。 project_id 否 String 用户所处Region的Project ID。 db_name 否 String 数据库用户名,DDS的账号认证数据库,Oracle的serviceName。 kafka_security_config 否 Object Kafka安全认证相关,非安全认证不需要此参数。 详情请参见表5。 表5 kafka_security_config字段数据结构说明 参数 是否必选 参数类型 描述 type 否 String 安全协议,安全认证时必填,对应Kafka字段:security.protocol。 PLAINTEXT:无安全认证方式,仅需输入IP和端口进行连接。 SASL_PLAINTEXT:使用SASL机制连接Kafka,需要设置SASL相关配置。 SSL:使用SSL加密方式连接Kafka,需要设置SSL相关配置。 SASL_SSL:使用SASL及SSL加密认证方式,需要设置SSL及SASL相关参数配置信息。 枚举值: PLAINTEXT SASL_PLAINTEXT SASL_SSL SSL trust_store_key_name 否 String 证书名称,安全协议为SSL、SASL_SSL时必填。 trust_store_key 否 String 安全证书base64转码后的值,安全协议为SSL、SASL_SSL时必填。 trust_store_password 否 String 证书密码,使用安全认证时必填。 endpoint_algorithm 否 String 主机名端点识别算法,指定通过服务端证书验证服务端主机名的端点识别算法,不填表示禁用主机名验证。对应Kafka字段:ssl.endpoint.identification.algorithm sasl_mechanism 否 String SASL机制,用于客户端连接的SASL机制,认证类型为SASL_PLAINTEXT、SASL_SSL时必填。对应Kafka字段:sasl.mechanism,支持以下四项,取值: GSSAPI PLAIN SC RAM -SHA-256 SCRAM-SHA-512 delegation_tokens 否 Boolean 是否为委托令牌鉴权,安全协议为SASL_SSL和SASL_PLAINTEXT时,SASL机制选择“SCRAM-SHA-256”或者“SCRAM-SHA-512”时生效。 enable_key_store 否 Boolean 是否开启SSL双向认证。 key_store_key 否 String Keystore证书,开启SSL双向认证时需要。 key_store_key_name 否 String Keystore证书名称,开启SSL双向认证时需要。 key_store_password 否 String Keystore证书密码,证书设置了密码时需要。对应Kafka字段:ssl.keystore.password set_private_key_password 否 Boolean 是否设置Keystore私钥密码,默认为false。 key_password 否 String Keystore私钥密码,开启SSL双向认证时,set_private_key_password为true时必填。对应Kafka字段:ssl.key.password。
  • 错误码 调用接口出错后,将不会返回结果数据。调用方可根据每个接口对应的错误码来定位错误原因。 当调用出错时,HTTP请求返回一个HTTP状态码。返回的消息体中是具体的错误编码及错误描述信息。 当您调用API时,如果遇到“APIGW”开头的错误码,请参见API网关错误码进行处理。 表1 v3接口错误码 状态码 错误码 错误信息 描述 处理措施 422 DRS.M00002 The returned result is empty. 服务返回结果为空。 请检查请求参数或者任务状态。 422 DRS.M00004 Service is abnormal. Check logs. 服务异常,需要查看日志。 服务异常,请联系技术人员处理。 400 DRS.M00007 Invalid request parameter. 请求参数非法。 请检查请求参数。 403 DRS.M00100 Invalid token. IAM鉴权不合法。 请检查请求的用户token信息。 404 DRS.M00101 The user role is empty. 用户角色为空。 请检查用户拥有的角色信息。 403 DRS.M00102 You do not have sufficient permissions. 用户权限不足。 请检查当前用户的DRS权限。 401 DRS.M00103 You do not have operation permissions. Check account permissions on IAM. 当前用户没有操作权限,请通过IAM检查账号权限。 请检查当前用户的DRS权限。 400 DRS.M00105 User restricted. 用户受限。 请检查当前用户的DRS权限。 400 DRS.M00200 Parameter error. 参数错误。 请检查请求参数。 400 DRS.M00201 The parameter %s is empty. %s 参数为空。 请检查请求参数。 400 DRS.M00202 The value of parameter %s is invalid. %s 取值不合法。 请检查请求参数。 400 DRS.M00210 The value of Page is invalid, %s 无效的Page值,%s。 请检查请求的page参数。 400 DRS.M00211 The value of Page exceeds the upper limit. Page超过上限。 请检查请求的page参数。 403 DRS.M00261 Invalid project ID. 无效的项目ID。 请检查请求参数project ID。 400 DRS.M00269 The tag key must be unique. 标签键不能重复。 请检查请求参数中的标签键值。 400 DRS.M00270 The tag key or value is too long. 标签键或值过长。 请检查请求参数中标签键或值的长度。 400 DRS.M00271 The number of tags exceeds the limit. 标签个数超过限制。 请检查请求参数中的标签个数。 400 DRS.M00273 Invalid parameter. The parameter contains %s. 参数不合法,参数中存在%s。 请检查请求参数。 422 DRS.M00277 The task name already exists. 该任务名称已存在。 请更换任务名称。 400 DRS.M00289 Missing query result: %s 查询结果为空: 请检查请求参数。 400 DRS.M00298 Job does not exist, please check job id. 任务不存在,请检查任务id是否正确。 请检查请求参数。 400 DRS.M00299 Only one jobId is allowed. 只允许传入一个jobID。 请检查请求参数。 400 DRS.M00300 Invalid request, %s 请求无效,%s。 请检查请求参数。 400 DRS.M00301 There are duplicate %s in request. 请求里有重复的任务ID。 请检查请求参数。 400 DRS.M00302 The transfer schema is invalid, please refer to supported transfer schema. 迁移方案无效,请参考支持的方案。 请检查请求参数。 400 DRS.M00303 The corresponding parameter is not obtained from the cache. 未从缓存中获取对应参数。 请检查请求参数。 400 DRS.M00304 This API cannot be called in the current task status. 当前任务状态不能调用此API。 请检查当前任务状态。 400 DRS.M00305 Parameter error:%s 参数错误:%s。 请检查请求参数。 400 DRS.M00306 Start time can not same with end time. 开始时间不能与结束时间相同。 请检查请求参数。 400 DRS.M00307 Only subtasks can invoke this interface. 只有子任务能用该接口。 请更换任务ID。 400 DRS.M00308 Only parent tasks can invoke this interface. 只有父任务能用该接口。 请更换任务ID。 400 DRS.M00401 %s is not support re-editing of synchronization tasks. %s 不支持重新编辑同步任务。 请更换任务ID。 400 DRS.M00402 The edit subtask already exists in the task. 子任务已存在。 请更换任务ID。 400 DRS.M00403 The job is not support modify the speed limit. 该任务不支持限速。 请更换任务ID。 422 DRS.M00414 The value for Logical Copy Slot Advance Interval must be between 1 and 999. 逻辑复制槽推进间隔的值必须在1到999之间。 请修改逻辑复制槽推进间隔的值。 422 DRS.M01501 Service error. 服务异常。 服务异常,请联系技术人员处理。 202 DRS.M01504 Another operation is being performed on the migration task or the migration task is abnormal. 该迁移任务正在进行其他操作或该迁移任务故障,无法执行该操作,请稍后重试。 请检查当前任务状态。 400 DRS.M05003 Task information not found. 查询不到任务信息。 请检查请求的任务ID。 400 DRS.M05004 The task has been deleted or the resource has been released. 任务已删除或资源已释放。 请检查当前任务状态。 422 DRS.M05006 Invalid RDS DB instance. RDS实例非法。 请检查请求的RDS实例ID。 200 DRS.M05066 Failed to create instance! 创建实例失败。 请联系技术人员处理 400 DRS.M06007 The DB instance cannot be left blank. 数据库实例不能为空。 请检查请求的RDS实例ID。 422 DRS.M06011 Failed to obtain RDS information. 获取RDS信息失败。 请检查请求的RDS实例ID。 422 DRS.M06020 The destination DB instance has been set to read/write by the migration task %s and cannot be used. 目标库实例已被迁移任务%s设置为读写,无法使用该实例。 请更换请求的RDS实例ID。 422 DRS.M06021 The destination DB instance has been set to read/write by the synchronization task %s and cannot be used. 目标库实例已被同步任务%s设置为读写,无法使用该实例。 请更换请求的RDS实例ID。 400 DRS.M07000 The data transformation is already existed! 数据加工规则已存在。 请修改请求的数据加工规则。 200 DRS.KE0001 Failed to connect to the database network. 连接数据库网络失败。 请检查数据库与迁移实例的网络配置。 200 DRS.KE0002 The username or password is incorrect. 用户名或密码错误。 请检查用户名或者密码。 200 DRS.KE0003 The port cannot be accessed. 端口无法访问。 请检查数据库端口。 200 DRS.KE0004 Connection failed.Handling suggestion: Please check the security group/firewall/SSL configuration of the database. 连接失败。 请检查数据库的安全组/防火墙/SSL配置。 200 DRS.KE0005 The database user must allow remote connections.Handling suggestion: Run CREATE USER 'Account'@'%' IDENTIFIED BY 'Password' to create a user that allows remote connections. After the migration, delete this user. 数据库用户必须允许远程连接。 运行CREATE USER'Account'@'%' IDENTIFIED BY 'Password',创建允许远程连接的用户。迁移完成后,删除该用户。 200 DRS.KE0006 The remote connection permission is not configured in pg_hba.conf for the replication instance and database user.Handling suggestion: Add \"host all ***(dbuser) 0.0.0.0/0 password\" to the pg_hba.conf configuration file to grant the remote connection permission to the user and restart the database. After the migration is complete, delete this record and restart the database again. pg_hba.conf中没有为复制实例和数据库用户配置远程连接权限。 在pg_hba.conf配置文件中添加\"host all ***(dbuser) 0.0.0.0/0 password\",赋予用户远程连接权限,并重新启动数据库。迁移完成后,删除该记录,然后重新启动数据库。 200 DRS.KE0007 The database user does not have the login permission.Handling suggestion: Run alter role *** (dbuser) login to grant the login permission. 数据库用户没有登录权限。 执行“修改角色*** (dbuser)登录”命令,赋予登录权限。 200 DRS.KE0008 The specified source database does not exist. Handling suggestion: Create a database or enter an existing database name. 指定的源数据库不存在。 创建数据库或输入现有数据库名称。 200 DRS.KE0009 The SSL CA certificate does not exist.Handling suggestion: Contact technical support. SSL CA证书不存在。 请联系技术支持。 200 DRS.KE0010 SSL is not enabled or the certificate is invalid. Handling suggestion: Enable SSL or upload a valid SSL CA certificate. SSL未启用或证书无效。 启用SSL或上传有效的SSL CA证书。 200 DRS.KE0011 The source database does not have the Microsoft SQL Server replication component installed. 源数据库未安装Microsoft SQL Server复制组件。 安装Microsoft SQL Server复制组件。 200 DRS.KE0012 The user does not have the permission to access the database. 用户没有访问数据库的权限。 给用户添加访问数据库的权限。 200 DRS.KE0013 Insufficient permissions. 权限不足。 给用户添加访问数据库的权限。 200 DRS.KE0014 Internal error. 内部错误。 请联系技术支持。 200 DRS.KE0015 The network connection between the replication instance and database is faulty. 迁移实例与数据库之间的网络连接故障。 请联系技术支持。 200 DRS.KE0016 Failed to connect to the database. In the postgresql.conf file, the listen_addresses parameter value or port number is incorrect.Handling suggestion: In postgres.conf, set listen_addresses to * or change the port number to the correct value. Then, restart the database for the modification to take effect. 连接数据库失败。postgresql.conf文件中,监听地址参数值或端口号不正确。 在postgres.conf中,将监听地址设置为*或将端口号修改为正确的值。然后重启数据库,使修改生效。 200 DRS.KE0017 The IP address cannot be pinged.Handling suggestion: See migration preparations in the DRS Best Practices. 无法ping通IP地址。 请参见DRS最佳实践中的迁移准备。 200 DRS.KE0018 Failed to resolve the domain name. 域名 解析失败。 请参见DRS最佳实践中的迁移准备。 200 DRS.KE0019 Failure cause: The subnets of any of the source, destination, or replication (synchronization or disaster recovery) instances in different VPCs overlap. 源库、目标库以及迁移(同步、灾备)实例的其中任意两实例所属VPC的子网CIDR存在重叠 请参见DRS最佳实践中的迁移准备。 200 DRS.KE0020 Incorrect replica set name. 副本集名称错误。 请联系技术支持。 200 DRS.KE0021 The source database cannot connect to the port of the replication instance.Handling suggestion: Modify the firewall and security group configurations of the source and destination databases to enable the source database to connect to the port of the replication instance. See migration preparations in the DRS Best Practices. 源数据库无法连接到复制实例的端口。 修改源数据库和目标数据库的防火墙和安全组配置,使源数据库连接复制实例的端口。请参见DRS最佳实践中的迁移准备。 200 DRS.KE0022 The SSL certificate is incorrect.Handling suggestion: Upload a correct SSL certificate. SSL证书错误。 上传正确的SSL证书。 200 DRS.KE0023 The DRS EIP is not in the whitelist of the source database.Handling suggestion: Add the DRS EIP to the whitelist of the source database. DRS弹性公网IP不在源数据库的白名单中。 将DRS弹性公网IP添加到源数据库的白名单中。 200 DRS.KE0030 The service name is incorrect.Handling suggestion: Check whether the service name is correct before the connection test. 数据库服务名错误。 检查测试连接时输入的数据库服务名是否正确。 200 DRS.KE0031 Query failed.Handling suggestion: Check whether the migration account has sufficient permissions. 查询失败。 检查迁移账号是否有足够的权限。 200 DRS.KE0032 The Oracle certificate is incorrect.Handling suggestion: Upload a correct Oracle certificate. Oracle证书错误。 上传正确的Oracle证书。 200 DRS.KE0033 The username, password, or authentication database of the source database is incorrect.Handling suggestion: Check that the input username, password, and authentication database for the connection test are correct. 源数据库的用户名、密码或鉴权数据库错误。 检查连接测试输入的用户名、密码和认证数据库是否正确。 200 DRS.KE0034 The username, password, or authentication database of the destination database is incorrect.Handling suggestion: Check that the input username, password, and authentication database for the connection test are correct. 目标数据库的用户名、密码或鉴权数据库错误。 检查连接测试输入的用户名、密码和认证数据库是否正确。 200 DRS.KE0035 The database middleware is not a MySQL sharding middleware. 数据库中间件不是MySQL分片中间件。 请联系技术支持。 200 DRS.KE0036 SSL must be enabled when the database password plugin caching_sha2_password is verified.Handling suggestion: Enable SSL or create a user. 验证数据库密码插件cache_sha2_password时,必须启用SSL。 启用SSL或创建用户。 200 DRS.KE0037 The username or password is incorrect.Handling suggestion: Check that the input username and password for the connection test are correct. 用户名或密码错误。 检查连接测试输入的用户名和密码是否正确。 200 DRS.KE0038 The account is locked.Handling suggestion: Contact technical support to unlock the account. 账号已锁定。 请联系技术支持人员解锁账号。 200 DRS.KE0039 The database cannot be connected because the client IP address is not in the whitelist.Handling suggestion: Use an account with the ALTER SYSTEM permission and execute the following SQL statement: alter system add hba entry (hostssl [Username] [Subnet of the RDS instance]); 客户端IP地址不在白名单中,无法连接数据库。 使用具备ALTER SYSTEM权限账号,执行以下sql: alter system add hba entry (hostssl [用户名] [RDS实例所属的子网网段]) 200 DRS.KE0040 The kafka brokers is not available. Kafka节点不可用。 请联系技术支持。 200 DRS.KE0041 The kafka is not available. Kafka不可用。 请联系技术支持。 200 DRS.KE0042 The kafka topic is not existed. kafka主题不存在。 请联系技术支持。 200 DRS.KE0043 The user does not have the permission to create connections.Grant the required permission to the user and try again. 用户没有创建连接的权限。 为用户授予所需的权限,然后重试。 200 DRS.KE0044 The parameters for test connection contains non-ascii character. Handling suggestion: Please check test connection parameters, use user info without NON-ASCII characters to test connection. 测试连接的参数包含非ascii字符。 请检查测试连接参数,使用不带非ASCII字符的用户信息测试连接。 200 DRS.KE0045 The user account is locked. 用户账号已锁定。 请联系技术支持。 200 DRS.KE0046 The IP address that the user requested to establish a connection is not monitored by the database. 用户请求建立连接的IP地址不受数据库监控。 请联系技术支持。 200 DRS.KE0047 The queue name is not exist.Handling suggestion: Check that the input queue name for the connection test are correct. 队列名称不存在。 检查连接测试的输入队列名称是否正确。 200 DRS.KE0048 Failed to connect to the database. 连接数据库失败。 请联系技术支持。 200 DRS.KE0049 Database user privilege is not enough. 数据库用户权限不足。 请联系技术支持。 200 DRS.KE0050 The PDB database is not open. PDB数据库未打开。 打开PDB数据库。 200 DRS.KE0051 The PDB database does not exist. PDB数据库不存在。 请联系技术支持。 200 DRS.KE0052 Versions earlier than Oracle 12c do not support PDB. Oracle 12c以下版本不支持PDB。 请联系技术支持。 200 DRS.KE0053 Entered Oracle user has insufficient permissions. 输入的Oracle用户权限不足。 请联系技术支持。 200 DRS.KE0054 Agent Connection Failed.Handling suggestion: Please check whether the logical replication agent is enabled or IP address and port number of the logical replication agent is correct. Agent连接失败。 确认逻辑复制代理是否启用,或逻辑复制代理的IP、端口是否正确。 200 DRS.KE0055 Password has expired.Handling suggestion: Please reset the password. 密码过期。 请重置密码。 200 DRS.KE0056 The current instance does not support connections on multiple IP addresses during synchronization. Possible cause: The current instance is connected to a node through multiple IP addresses, which can cause a task to fail. Handling suggestion: Select a stable node, enter the single IP address of the node, and try to connect to the instance again. 当前实例的数据同步不支持用多IP方式进行连接。 请选择某个相对稳定的节点,填写该节点的单IP重新尝试连接。 200 DRS.KE0057 The Kafka user name or password is incorrect. Kafka的用户名或密码不正确。 请检查用户名或者密码。 200 DRS.KE0058 The Kafka encryption certificate or certificate password is incorrect. Kafka加密证书或证书密码不正确。 请检查用户名、密码或者证书。 200 DRS.KE0059 The connected DB engine does not match the DB engine supported by the task. 连接的数据库引擎与任务支持的数据库引擎不匹配。 请联系技术支持。 200 DRS.KE0060 Test connection is succeeded.Handling suggestion: The Oracle database is a RAC cluster. You are advised to use the SCAN IP address as the connection. For details, see here. 测试连接成功。 所提供的Oracle为RAC集群,建议使用SCAN IP作为连接。 200 DRS.KE0061 Possible reasons are:1. The node status is abnormal.2. The primary node information is not specified.3. The whitelist of pg_hba.conf is not configured.4.The network is abnormal. 测试连接失败。可能原因是:1、节点状态异常2、未填写主节点信息3、未配置pg_hba.conf白名单4、网络异常 请联系技术支持。 200 DRS.KE0062 The archived space is full, need to release. 归档空间已满,需要释放。 清理归档空间。 200 DRS.KE0063 The database query result is empty. The database does not have a table or does not have the SELECT permission on the table. 库查询结果为空,库不存在表或者没有表的SELECT等相关权限。 请联系技术支持。 200 DRS.KE0064 The account password has expired.Handling suggestion: Changing the Expired Status of a User to OPEN.Refer to the modification statement: UPDATE SYS.USER$ SET ASTATUS = 0 WHERE NAME = 'user_name'. 账号的密码过期。 修改用户过期状态为OPEN状态.参考修改语句:UPDATE SYS.USER$ SET ASTATUS = 0 WHERE NAME = 'user_name'. 200 DRS.KE0065 Database access denied. Handling suggestion: 1.Check whether the database name is correct before the connection test. 2.Check whether the DB2 database listening port number is correct. 3.Check whether the DB2 server is stopped. 4.Check whether the Firewall is stopped. 数据库访问被拒绝。 1.连接测试前检查数据库名称是否正确。2.检查DB2数据库的监听端口号是否正确。3.检查DB2服务器是否停止。4.检查防火墙是否关闭。 200 DRS.KE0066 The number of DRS task shards must be the same as the actual number of GaussDB shard nodes. DRS任务分片数应与GaussDB实际的分片节点数保持一致。 请联系技术支持。 200 DRS.KE0067 Cannot open user default database. 无法打开用户默认数据库。 请联系技术支持。 200 DRS.KE0068 The GTID format is incorrect. GTID格式不正确。 请联系技术支持。 200 DRS.KE0069 The specified point is unavailable, the specified point must be between the task start point and the current point. 指定位点不满足要求,需要处于任务启动位点和当前位点之间。 请联系技术支持。 200 DRS.KE0070 Connection failed.Handling suggestion: Please check the security group/firewall/SSL configuration/pg_hba.conf whitelist of the database. 连接失败。 请检查数据库的安全组/防火墙/SSL配置/pg_hba.conf白名单。 表2 v5接口错误码 状态码 错误码 错误信息 描述 处理措施 400 DRS.10000001 Failed 失败。 请联系技术人员处理。 400 DRS.10020000 Parameter error:%s 参数错误%s 请检查请求参数。 400 DRS.10020001 Parameter %s is null 参数%s为空。 请检查请求参数。 400 DRS.10020002 The value of parameter %s is invalid. %s 参数取值不合法 请检查请求参数。 400 DRS.10000010 The task does not exist. Check the task ID. 任务不存在,请检查任务ID。 请检查任务ID。 400 DRS.10000011 The database is abnormal. 数据库异常。 请联系技术人员查看日志。 400 DRS.10000012 The start time cannot be the same as the end time. 开始时间不能与结束时间相同。 修改请求参数中的时间。 400 DRS.10010000 The start time cannot be the same as the end time. 开始时间不能与结束时间相同。 修改请求参数中的时间。 400 DRS.10010002 Async job param checking, Please wait param check complete and resubmit. 异步任务正在参数校验中, 请等待参数校验完成后再提交。 等待参数校验完成后再提交。 400 DRS.10010004 Submit job failed. 提交任务失败。 请联系技术人员查看日志。 400 DRS.10010006 Create job failed. 创建任务失败。 请联系技术人员查看日志。 400 DRS.10010007 Test connection failed. 测试连接失败。 请联系技术人员查看日志。 400 DRS.10010009 Set policy config failed,%s 设置任务策略失败,%ss。 检查任务策略。 400 DRS.10010010 Set progressing data failed,%s 设置数据加工数据失败,%s。 检查数据加工规则。 400 DRS.10010011 Set user migration data failed,%s 设置用户迁移数据失败,%s。 检查用户迁移设置。 400 DRS.10010012 Precheck failed,%s 预检查失败,%s。 请联系技术人员查看日志。 400 DRS.10010013 Database param modify success, please restart the database. 数据库实例参数已修改,请重启数据库。 请重启数据库。 400 DRS.10010014 Start job failed,%s 启动任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010016 %s is an EPS system tag and cannot be added manually. %s 是EPS系统标签,无法手动添加。 请检查标签参数。 400 DRS.10010024 Param check failed,%s 参数校验失败,%s。 请检查参数。 400 DRS.10010025 The current API does not support this %s engine type now. 当前API现在不支持此引擎类型。 请修改请求参数。 400 DRS.10010026 Reset job failed,%s. 重置任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010027 Restart job failed,%s. 重试任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010028 Pause job failed,%s. 暂停任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010029 Terminate job failed,%s. 结束任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010030 Delete job failed,%s. 删除任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010031 Test connection timeout. 测试连接超时。 请联系技术人员查看日志。 400 DRS.10010032 Failed to create the comparison task,%s. 创建对比任务失败,%s。 请联系技术人员查看日志。 400 DRS.10010033 Query progress failed,%s. 查询任务进度失败,%s。 请联系技术人员查看日志。 400 DRS.10020072 Invalid projectId. 无效的Project ID。 请检查项目ID。 400 DRS.10020077 Duplicate task name. 任务名称重复。 请检查任务名称。 400 DRS.10030000 Excel content is empty. 上传的Excel内容为空。 请检查上传的excel。 400 DRS.10030001 Excel file size is too large, exceeds the threshold %s. 上传的Excel大小超过阈值,阈值为:%s。 请检查上传的excel大小。 400 DRS.10030002 Excel has more than one sheet. 上传的Excel的sheet超过1个。 请检查上传的excel文件数量。 400 DRS.10030003 The object name is invalid. 对象名称不合法。 请检查对象名称。 400 DRS.10030004 Support the file name extension can be ZIP, JSON, TXT, or Excel 2007 or later (with the file name extension .xlsx/.xls). 支持导入ZIP、JSON、TXT、Excel 2007及以上版本(后缀名为.xlsx/.xls) 请检查导入excel格式。 400 DRS.10030005 Export excel fail. 导出excel文件失败。 请联系技术人员查看日志。 400 DRS.10030006 The file name format is %s. 文件名仅支持 %s。 请检查文件名称。 400 DRS.10030007 The supported file format is .xls or .xlsx. Please check. 支持的文件格式为.xls或.xlsx,请检查。 请检查文件格式。 400 DRS.10030008 Failed to download the file. 下载文件失败。 请联系技术人员查看日志。 400 DRS.10030009 Failed to export data, because %s. 因为%s,导出数据失败。 请联系技术人员查看日志。 400 DRS.10030010 The information of imported database is empty. Please check. 请检查,库信息为空。 请检查导入文件。 400 DRS.10030011 The number of selection database exceeds the limit of 5000. 选择数据库的数量超过了5000的限制。 请检查导入文件。 400 DRS.10030012 Failed to import the Excel file. 导入excel文件失败。 请联系技术人员查看日志。 400 DRS.10020111 The length exceeds %s. 超过限制的长度%s 请检查参数长度。 400 DRS.10060015 Task is waiting for running. 任务正在等待运行 请检查参数长度。 父主题: 附录
  • 响应参数 状态码: 200 表8 响应Body参数 参数 参数类型 描述 results Array of objects 批量数据加工响应列表。 详情请参见表9。 count integer 总数。 表9 results字段数据结构说明 参数 参数类型 描述 id String 任务ID。 status String 状态。取值: success failed error_code String 错误码。 error_msg String 错误信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 指定类型为application/json。 缺省值:application/json X-Auth-Token 是 String 从IAM服务获取的用户Token。 X-Language 否 String 请求语言类型。 缺省值:en-us 取值: en-us zh-cn 表3 请求Body参数 参数 是否必选 参数类型 描述 jobs 是 Array of objects 批量数据加工规则请求列表。 详情请参见表4。 表4 jobs字段数据结构说明 参数 是否必选 参数类型 描述 job_id 否 String 任务ID。 object_info 否 Array of objects 对象信息,生成加工规则时需要填写。 详情请参见表5。 transformation_info 是 Object 加工信息。 详情请参见表6 config_transformation 否 Object 配置信息,如果存在多张关联表,请生成多条配置规则。满足配置条件的数据将暂存到缓存中,在数据过滤的场景进行使用。 配置的库名和表名支持数字、字母和下划线。 配置的列名、主键、索引,请确保与源库配置表的字段名保持大小写一致。 详情请参见表7。 表5 object_info字段数据结构说明 参数 是否必选 参数类型 描述 id 否 String 数据库名称和数据库表名称,例如格式为lxl_test1-*-*-test_1,其中lxl_test1为数据库名称,test_1为表名称。 select 否 String 是否选择高级配置,值为true。 表6 transformation_info字段数据结构说明 参数 是否必选 参数类型 描述 transformation_type 是 String 生成加工规则值为contentConditionalFilter。 生成配置规则值为configConditionalFilter。 取值: contentConditionalFilter configConditionalFilter value 是 String 过滤条件,生成加工规则值为sql条件语句,生成配置规则值为config。长度限制256。 表7 config_transformation字段数据结构说明 参数 是否必选 参数类型 描述 db_table_name 是 String 库名.表名,例如格式为lxl_test1.test_1,其中lxl_test1为库名,test_1为表名。 db_name 是 String 库名。长度限制256。 table_name 是 String 表名。长度限制256。 col_names 是 String 列名。长度限制256。 prim_key_or_index 是 String 主键或唯一索引。长度限制256。 indexs 是 String 优化查询所需的索引。长度限制256。 values 是 String 过滤条件。长度限制256。
  • 配置方法 在编排流水线任务时,添加“执行镜像命令”插件。 图1 执行镜像命令 根据需要配置任务参数,参数说明如下: 参数项 说明 名称 插件名称。 支持中文、大小写英文字母、数字、“-”、“_”、“,”、“;”、“:”、“.”、“/”、“(”、“)”、“(”、“)”及空格。 字符长度范围为1-128。 镜像属性 当前只支持公开镜像。 SWR镜像地址 待下载的SWR镜像的地址。获取方式如下: 登录 容器镜像服务 。 在导航栏单击“我的镜像”,单击“镜像名称”进入镜像详情页面。 单击“下载指令”列的,复制镜像下载指令,其中,“docker pull”后面部分即为镜像地址。 启动命令 容器启动命令。输入Docker命令,以便在容器中运行特定的应用程序或脚本。
  • 执行流水线 访问CodeArts Pipeline首页。 在流水线列表页找到待执行的流水线,单击操作列,选择“手动执行”。 弹出“执行配置”弹窗,配置如下信息: 流水线源:选择代码源的分支或标签。 运行参数配置:如果流水线配置了运行时参数,请根据需要设置参数值。运行参数配置及使用请参见配置流水线参数。 执行阶段配置:流水线执行阶段支持只执行部分任务,可以选择一个或多个任务执行,默认执行全部任务。 流水线阶段如果在配置时选择了“总是运行”,则该阶段的任务默认选中且不能取消。 执行描述:填写本次执行的信息说明。 单击“执行”,进入流水线执行详情页面,可实时查看流水线执行进展及任务执行状态。 图1 执行流水线 单击“停止”,可中止任务执行。 单击“编辑”,可修改流水线配置信息。 流水线支持并发执行,继续单击“执行”,可以再次执行流水线,单条流水线最大支持同时执行的次数由购买套餐决定(体验版:1次;基础版:5次;专业版:10次;企业版:20次)。 执行完成后,即可查看流水线执行结果。执行过程遇到的问题请参考流水线常见问题。
  • 前提条件 已开通并授权使用CodeArts Pipeline。 准备一台具有弹性IP的主机,可以使用已有主机,也可以购买华为云弹性云服务器。 拥有创建项目的权限,满足如下条件之一即可: 拥有Tenant Administrator角色权限。为用户授予Tenant Administrator角色权限的操作方法请参考创建用户组并授权。 拥有CodeArts项目创建者权限。为用户授予CodeArts项目创建者权限的操作方法请参考设置CodeArts项目创建者。
  • ServiceComb引擎实例规格 您可根据需要托管的微服务实例数量,参考表3来选择ServiceComb引擎实例规格。 如表3所示,不同微服务实例数配额的ServiceComb引擎实例会赠送相应数量的配置条目数配额和最大支持微服务版本总数。 表3 ServiceComb引擎实例规格 微服务实例数配额 配置条目数配额 100实例 600 200实例 600 500实例 3,000 2,000实例 12,000
  • Nacos引擎实例规格 您可根据实际需要选择合适的Nacos引擎实例规格。 表2 Nacos引擎实例规格 微服务实例数 容量单元 客户端连接数 配置文件数 500实例 10个 1,000个 1,000个 1,000实例 20个 2,000个 2,000个 2,000实例 40个 4,000个 4,000个 3,000实例 60个 6,000个 6,000个 5,000实例 100个 10,000个 10,000个 当您需要Nacos引擎微服务实例数大于2,000时需要提交工单申请。 1个容量单元=50个微服务实例。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全