网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
态势感知 SA
认证测试中心 CTC
边缘安全 EdgeSec
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts盘古助手
华为云Astro大屏应用
计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
云手机服务器 CPH
专属主机 DeH
弹性伸缩 AS
镜像服务 IMS
函数工作流 FunctionGraph
云耀云服务器(旧版)
VR云渲游平台 CVR
Huawei Cloud EulerOS
云化数据中心 CloudDC
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
CDN与智能边缘
内容分发网络 CDN
智能边缘云 IEC
智能边缘平台 IEF
CloudPond云服务
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
态势感知 SA
认证测试中心 CTC
边缘安全 EdgeSec
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
可信智能计算服务 TICS
推荐系统 RES
云搜索服务 CSS
数据可视化 DLV
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
湖仓构建 LakeFormation
智能数据洞察 DataArts Insight
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
开天aPaaS
应用平台 AppStage
开天企业工作台 MSSE
开天集成工作台 MSSI
API中心 API Hub
云消息服务 KooMessage
交换数据空间 EDS
云地图服务 KooMap
云手机服务 KooPhone
组织成员账号 OrgID
云空间服务 KooDrive
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
区块链
区块链服务 BCS
数字资产链 DAC
华为云区块链引擎服务 HBS
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
价格
成本优化最佳实践
专属云商业逻辑
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
其他
管理控制台
消息中心
产品价格详情
系统权限
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
云服务信任体系能力说明
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts盘古助手
华为云Astro大屏应用
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
存储容灾服务 SDRS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
云存储网关 CSG
专属分布式存储服务 DSS
数据工坊 DWR
地图数据 MapDS
键值存储服务 KVS
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
云原生服务中心 OSC
应用服务网格 ASM
华为云UCS
数据库
云数据库 RDS
数据复制服务 DRS
文档数据库服务 DDS
分布式数据库中间件 DDM
云数据库 GaussDB
云数据库 GeminiDB
数据管理服务 DAS
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
AI开发平台ModelArts
华为HiLens
图引擎服务 GES
图像识别 Image
文字识别 OCR
自然语言处理 NLP
内容审核 Moderation
图像搜索 ImageSearch
医疗智能体 EIHealth
企业级AI应用开发专业套件 ModelArts Pro
人脸识别服务 FRS
对话机器人服务 CBS
语音交互服务 SIS
人证核身服务 IVS
视频智能分析服务 VIAS
城市智能体
自动驾驶云服务 Octopus
盘古大模型 PanguLargeModels
IoT物联网
设备接入 IoTDA
全球SIM联接 GSL
IoT数据分析 IoTA
路网数字化服务 DRIS
IoT边缘 IoTEdge
设备发放 IoTDP
企业应用
域名注册服务 Domains
云解析服务 DNS
企业门户 EWP
ICP备案
商标注册
华为云WeLink
华为云会议 Meeting
隐私保护通话 PrivateNumber
语音通话 VoiceCall
消息&短信 MSGSMS
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
云桌面 Workspace
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMA Exchange
API全生命周期管理 ROMA API
政企自服务管理 ESM
视频
实时音视频 SparkRTC
视频直播 Live
视频点播 VOD
媒体处理 MPC
视频接入服务 VIS
数字内容生产线 MetaStudio
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
专属云
专属计算集群 DCC
开发者工具
SDK开发指南
API签名指南
DevStar
华为云命令行工具服务 KooCLI
Huawei Cloud Toolkit
CodeArts API
云化转型
云架构中心
云采用框架
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
支持计划
专业服务
合作伙伴支持计划
我的凭证
华为云公共事业服务云平台
工业软件
工业数字模型驱动引擎
硬件开发工具链平台云服务
工业数据转换引擎云服务
文档首页/ 数据复制服务 DRS/ 实时同步/ 自建到自建/ 将MySQL同步到GaussDB分布式版

将MySQL同步到GaussDB分布式版

更新时间:2025-02-10 GMT+08:00
分享

支持的源和目标数据库

表1 支持的数据库

源数据库

目标数据库

  • 本地自建MySQL数据库
  • ECS自建MySQL数据库

GaussDB分布式(MySQL兼容模式,版本数据库内核版本为505.2及以下版本,内核版本与数据库发布版本对应关系。)

数据库账号权限要求

在使用DRS进行同步时,连接源库和目标库的数据库账号需要满足以下权限要求,才能启动实时同步任务。不同类型的同步任务,需要的账号权限也不同,详细可参考表2进行赋权。DRS会在“预检查”阶段对数据库账号权限进行自动检查,并给出处理建议。

表2 数据库账号权限

类型名称

全量同步

全量+增量同步增量同步

源数据库连接账号

SELECT。

授权语句:GRANT SELECT ON <database>.<table> to <user>;

SELECT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。

授权语句:GRANT SELECT, LOCK TABLES ON <database>.<table> to drsUser; GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* to <user>;

全量+增量任务,当源数据库为8.0.2及以上版本时,还需要授予XA_RECOVER_ADMIN权限,以防启动或编辑时未提交的XA事务导致数据有损。

目标数据库连接账号

  • 库级权限:需要使用root或其他有Sysadmin角色的DATABASE用户登录postgres基库,赋予用户DATABASE的CREATE、CONNECT权限。

    授权语句:GRANT CREATE, CONNECT ON DATABASE <database> TO <user>;

  • SCHEMA级权限:需要使用 root、或其他有Sysadmin角色的DATABASE用户、或使用数据库的OWNER用户登录数据库,赋予用户SCHEMA的CREATE、USAGE权限。

    授权语句:GRANT CREATE, USAGE ON SCHEMA <schema> TO <user>;

  • 表级权限:需要使用 root、或其他有Sysadmin角色的DATABASE用户、或使用数据库的OWNER用户登录数据库 ,赋予用户SCHEMA下表的DML相关权限(SELECT权限在处理无主键表时需要)。

    授予SCHEMA下所有表的DML权限:GRANT SELECT, UPDATE, INSERT, DELETE, INDEX, ALTER ON ALL TABLES IN SCHEMA <schema> TO <user>;

    授予SCHEMA下指定表的DML权限:GRANT SELECT, UPDATE, INSERT, DELETE, INDEX, ALTER ON TABLE <schema.table> TO <user>;

  • 目标库使用gsloader等工具创建相关系统表(如 public.pgxc_copy_error_log,public.gs_copy_summary)时,DRS访问相关系统表需要有系统表的all privilege权限,详细信息可参考《GaussDB工具参考》
说明:
  • 建议创建单独用于DRS任务连接的数据库账号,避免因为数据库账号密码修改,导致的任务连接失败。
  • 连接源和目标数据库的账号密码修改后,请参考修改连接信息章节修改DRS任务的连接信息,避免任务连接失败后自动重试,导致数据库账号被锁定影响使用。

支持的同步对象范围

在使用DRS进行同步时,不同类型的同步任务,支持的同步对象范围不同,详细情况可参考表3DRS会根据用户选择,在“预检查”阶段对同步对象进行自动检查

表3 支持的同步对象

类型名称

使用须知

同步对象范围

  • 源数据库中的库名、表名、列名不能包含:<'>/\以及非ASCII字符。
  • 源数据库中表结构的列名不能以\字符结尾。
  • 仅支持同步表结构、表数据、索引信息。
  • 仅支持同步有主键表。
  • 仅支持同步MyISAM和InnoDB表。
  • 虚拟列会被同步为普通列,且不写入任何数据,也不做增量同步。
  • 不支持同步存储过程等其他数据库对象。
  • 不支持同步既是无主键表,又是分区表的自建表,可能会导致任务失败。
  • 不支持GaussDB的无主键复制表,如果需要同步的表在GaussDB为无主键复制表,会导致任务失败。
  • 全量和增量同步不支持隐藏列(INVISIBLE),隐藏列是MySQL 8.0.23开始支持的特性,例如:
    CREATE TABLE `test11` (
      `id` int NOT NULL,
      `c1` int DEFAULT NULL /*!80023 INVISIBLE */,
      PRIMARY KEY (`id`));

注意事项

为保证任务的正常运行,DRS提供了自动化的检查方法,在您启动DRS任务前,会针对源数据库和目标数据库的相关配置、条件进行检查。主要的检查项和对应的处理建议请参考预检查项。除了预检查项目之外,您还需要注意的事情参见表4

表4 注意事项

类型名称

使用和操作限制

源数据库限制

  • 源数据库中的库名、表名不能包含:.<'>/\"以及非ASCII字符。
  • 不支持reset master或reset master to命令,可能会导致DRS任务失败或者数据不一致。
  • 如果源数据库MySQL不支持TLS1.2协议,或者为版本较低的自建库(低于5.6.46或在5.7.0-5.7.28之间),需提交运维申请才能使用SSL测试连接。

使用限制

通用:

  • 不允许源数据库进行恢复操作。
  • 数据同步过程中,不允许源数据库MySQL跨大版本升级,否则可能导致数据不一致或者同步任务失败(跨版本升级后数据、表结构、关键字等信息均可能会产生兼容性改变),建议在该场景下重建同步任务。

全量同步阶段:

  • 任务启动和全量数据同步阶段,请不要在源数据库执行DDL操作,否则可能导致任务异常。
  • DRS全量同步表结构时,MySQL->GaussDB(PG兼容性模式)不迁移表结构的自增属性。
  • DRS全量同步表结构时,列名不能是CTID、XMIN、CMIN、XMAX、CMAX、TABLEOID、XC_NODE_ID、TID、OID、GS_TUPLE_UID、TABLEBUCKETID,这些GaussDB禁止的字段,否则会导致建表失败。
  • 全量同步分区表的结构时会将该对象转为非分区的普通表,增量同步时,源库跟分区表相关的操作,可能无法同步到目标库或者在目标库执行失败。

增量同步阶段:

  • 不允许修改、删除连接源和目标数据库的用户的用户名、权限,或修改源和目标数据库的端口号。
  • 如果设置session变量character_set_client为binary,可能导致乱码。
  • 增量同步过程中支持DDL操作。默认同步的DDL类型有CREATE_TABLE,RENAME_TABLE,ADD_COLUMN,RENAME_COLUMN,MODIFY_COLUMN,CHANGE_COLUMN,ALTER_COLUMN,DROP_INDEX,RENAME_INDEX,客户可以根据自身需求,在对象选择页面选择需要同步的DDL类型。
  • 增量同步过程中,不支持DELETE和UPDATE目标数据库主键类型为tinyblob、blob、mediumblob、longblob、tinytext、text、mediumtext、longtext、clob、nclob、bytea、binary的表。

结束任务:

  • 任务正常结束

    请确保任务结束前,不要断开源和目标数据库的网络连通性,并在结束任务时关注同步日志上报的状态,达到数据库完整同步效果。

  • 任务强制结束

    强制结束将直接释放DRS资源。

常见故障排查:

  • 在任务创建、启动、全量同步、增量同步、结束等过程中,如有遇到问题,可先参考“故障排查”章节进行排查。

其他限制

  • 如果专属计算集群不支持4vCPU/8G或以上规格实例,则无法创建同步任务。
  • 在MySQL中,同一个database(schema)下面的不同表可以存在相同的索引名或约束名。而目标数据库GaussDB中,同一个schema中索引和约束名是唯一的,且长度存在上限。为防止索引和约束名冲突,DRS同步到目标表上的索引名称将变为此格式:哈希值+原索引名(可能被截断)+_key。其中哈希值由"原库名_原表名_原索引名"计算得到。同理,表上的原约束名将变为:哈希值+原约束名(可能被截断)+_key。
  • MySQL->GaussDB同步任务默认允许回环拓扑,不允许级联拓扑(即不支持从实例A同步到实例B,再从实例B同步到实例C)。
  • 分布列由数据库机制决定,DRS不主动指定分布列及分布方式。
  • 不支持无主键复制表的数据同步。
  • 在创建DRS任务之前,如果源数据库实例开启并设置了SQL限流规则,可能会导致DRS任务失败。
  • 网络中断在30秒内恢复的,不影响实时同步,如果超过30秒,则会导致同步任务失败。
  • 支持目标数据库中的表比源数据库多列场景,但是需要避免以下场景可能导致的任务失败。
    • 目标数据库多的列要求非空且没有默认值,源库insert数据,同步到目标数据库后多的列为null,不符合目标数据库要求。
    • 目标数据库多的列设置固定默认值,且有唯一约束。源库insert多条数据后,同步到目标数据库后多的列为固定默认值,不符合目标数据库要求。
  • 源库和目标库均相同的任务不允许出现重复同步的情况,如:A任务和B任务同时将源库的同一张表的实时同步到目标库的同一张表中,可能导致数据不一致和同步失败。
  • GaussDB只能设置库级字符集,如果遇到MySQL中设置了表级、字段级字符集的场景,可能会因为字符长度问题导致创建表结构异常。
  • DRS全量同步表结构时,源库中char、varchar、nvarchar、enum、set字符类型长度在目标库会按照字节长自动扩大(因为目标库为字节长),扩大倍数和源库中列的字符集有关。如源库字符集为UTF8的按照字节长扩大3倍,为UTF8MB4的按照字节长扩大4倍。
  • 不建议在数据库中使用非精确数值类型做主键,该特性影响DRS增量场景下对UPDATE、DELETE语句的同步,导致任务失败。
  • 如果无主键表中包含大字段(tinyblob、blob、mediumblob、longblob、tinytext、text、mediumtext、longtext、clob、nclob、bytea、binary),增量同步阶段存在大字段数据不一致的可能性。
  • 如果使用时间类型当主键,如果该时间类型的值是目标库的非法值,增量同步可能存在数据不一致或者任务失败的风险。
  • MySQL->GaussDB(PG兼容性模式)增量DDL使用的是B兼容性模式的DDL语法,可能会导致增量同步失败。
  • 由于浮点型数据是采用近似值存储,而不是作为精确值存储,此外操作系统平台和底层实现也对浮点型数据有影响,因此FLOAT,DOUBLE类型的数据是不精确的,所以在MySQL和GaussDB同步浮点型数据,存在一定差异的可能性,可参考MySQL的官方文档
  • 由于MySQL与GaussDB针对零时间("0000-00-00 00:00:00")内置的处理方式不同,当进行内容对比时,如果源、目标数据库存在零时间,对比结果会显示数据不一致。
  • 源数据库MySQL的表中如果存在定长的binary字段,MySQL驱动会在数据末尾按照长度补齐\0,可能导致同步到目标库GaussDB后出现数据不一致的情况。
  • 源数据库如果存在非标浮点类型,且非标浮点类型存在宽松模式可以写入但严格模式下无法写入的数据,同步过程可能会有数据不一致的风险。
  • 源数据库同步的表如果有AUTO_INCREMENT属性,结束任务时,DRS会自动刷新同步表的序列整型列所对应的GaussDB自增列(sequence)起始值,刷新值为该列的最大值+10000。
  • 选择同步表结构,目标库列名默认会被转成小写。如果需要同步的表在目标库已经存在,要求目标库同步对象表的列名全部小写。如果对目标库列名大小写有要求,请在管理控制台右上角,选择“工单 > 新建工单”,提交工单处理。
  • 已选择的表与未选择的表之间互相rename的DDL操作,在任务同步中会被过滤掉,可能会导致任务失败或数据不一致。
    • 对于一个DDL中存在一个rename的情况(例如:rename A TO B),只支持rename前后库表都在已选择库表中的rename操作(A和B都在已选择库表中),其他情况的rename DDL会被过滤。
    • 对于一个DDL中存在多个rename的情况(例如:rename A TO B, B TO C),只支持rename前后库表都在已选择库表中的部分rename操作 ,其他情况的rename DDL会被过滤(A和B在已选择库表中,C不在,仅执行rename A TO B)。
    • 不建议在多对一同步场景下的进行rename操作,可能会导致任务失败或数据不一致。
  • 如果目标库表结构已经存在且目标库列值范围小于源库列值范围,可能会出现数据截断或者数字类型默认兼容转换,导致任务失败或数据不一致。
  • time类型做主键,并且存在非正常数据(00:00:00-23:59:59之外的数据),内容比对结果可能显示数据不一致。

操作步骤

本小节以自建MySQL到GaussDB分布式版的实时同步为示例,介绍如何使用数据复制服务配置实时同步任务。

  1. 在“实时同步管理”页面,单击“创建同步任务”。
  2. 在“同步实例”页面,填选区域、项目、任务名称、描述、同步实例信息,单击“开始创建”

    • 任务信息
      图1 同步任务信息
      表5 任务和描述

      参数

      描述

      区域

      当前所在区域,可进行切换。

      项目

      当前区域对应的项目,可进行切换。

      任务名称

      任务名称在4到50位之间,必须以字母开头,可以包含字母、数字、中划线或下划线,不能包含其他的特殊字符。

      描述

      描述不能超过256位,且不能包含! = < > & ' " \ 特殊字符。

    • 同步实例信息
      图2 同步实例信息
      表6 同步实例信息

      参数

      描述

      数据流动方向

      选择“自建-自建”

      源数据库引擎

      选择“MySQL”

      目标数据库引擎

      选择GaussDB分布式版”

      网络类型

      此处以“公网网络”为示例。目前支持可选“公网网络”“VPC网络”“VPN、专线网络”

      VPC

      选择可用的虚拟私有云。

      同步实例所在子网

      请选择同步实例所在的子网。也可以单击“查看子网”,跳转至“网络控制台”查看实例所在子网帮助选择。

      默认值为当前所选数据库实例所在子网,请选择有可用IP地址的子网。为确保同步实例创建成功,仅显示已经开启DHCP的子网。

      内网安全组

      请选择内网安全组。内网安全组限制实例的安全访问规则,加强安全访问。

      同步模式

      DRS任务支持的同步模式,此处以“全量+增量”为示例。DRS全量、增量底层实现原理可参考产品架构和功能原理

      • “全量+增量”

        该模式为数据持续性实时同步,通过全量过程完成目标端数据库的初始化后,增量同步阶段通过解析日志等技术,将源端和目标端数据保持数据持续一致。

        说明:

        选择“全量+增量”同步模式,增量同步可以在全量同步完成的基础上实现数据的持续同步,无需中断业务,实现同步过程中源业务和数据库继续对外提供访问。

      • “全量”

        该模式为数据库一次性同步,适用于可中断业务的数据库同步场景,全量同步将非系统数据库的全部数据库对象和数据一次性同步至目标端数据库。

      • “增量”

        增量同步通过解析日志等技术,将源端产生的增量数据同步至目标端。

      指定公网IP

      网络类型选择“公网网络”时可见,选择为DRS实例绑定的弹性公网IP。任务创建时,DRS将会自动绑定该弹性公网IP,等待任务结束后将自动解绑该弹性公网IP。指定公网IP数量需要与实例数量匹配。

      公网网络迁移产生的数据传输费用收取标准请参见:弹性公网IP价格计算器

    • 任务类型
      图3 任务类型
      表7 任务类型信息

      参数

      描述

      规格类型

      选择DRS实例的规格类型,不同规格类型对应不同性能的性能上限,详细可参考实时同步链路规格说明

      说明:

      目前,DRS同步仅支持任务类型为单AZ的同步任务升级实例规格,不支持降低规格,具体操作及约束限制可参考同步规格变更

      可用区

      DRS任务创建的可用区,选择跟源或目标库相同的可用区性能更优。

    • 企业项目和标签
      图4 企业项目和标签

      表8 企业项目和标签

      参数

      描述

      企业项目

      企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。请在下拉框中选择所在的企业项目,其中,default为默认项目。

      更多关于企业项目的信息,请参见《企业管理用户指南》

      如果需要自定义企业项目,请在控制台右上角单击“企业”,进入“企业项目管理”页面创建,具体请参见《企业管理用户指南》中“创建企业项目”的内容。

      标签

      • 可选配置,对同步任务的标识。使用标签可方便管理您的任务。每个任务最多支持20个标签配额。
      • 如果您的组织已经设定DRS的相关标签策略,则需按照标签策略规则为任务添加标签。标签如果不符合标签策略的规则,则可能会导致任务创建失败,请联系组织管理员了解标签策略详情。
      • 任务创建成功后,您可以单击任务名称,在“标签”页签下查看对应标签。关于标签的详细操作,请参见标签管理
    说明:

    对于创建失败的任务,DRS默认保留3天,超过3天将会自动结束任务。

  3. 在“源库及目标库”页面,同步实例创建成功后,填选源库信息和目标库信息,单击“源库和目标库”处的“测试连接”,分别测试并确定与源库和目标库连通后,勾选协议,单击“下一步”

    图5 源库信息
    表9 源库信息

    参数

    描述

    IP地址或域名

    源数据库的IP地址或域名。

    端口

    源数据库服务端口,可输入范围为1~65535间的整数。

    数据库用户名

    源数据库的用户名。

    数据库密码

    源数据库的用户名所对应的密码。

    SSL安全连接

    通过该功能,用户可以选择是否开启对迁移链路的加密。如果开启该功能,需要用户上传SSL CA根证书。

    说明:
    • 最大支持上传500KB的证书文件。
    • 如果不启用SSL安全连接,请自行承担数据安全风险。
    说明:

    源数据库的数据库用户名和密码,会被系统加密暂存,直至删除该迁移任务后自动清除。

    图6 目标库信息
    表10 目标库信息

    参数

    描述

    IP地址或域名

    目标数据库的IP地址或域名,格式为IP地址/域名:端口。其中目标数据库服务端口,可输入范围为1~65535间的整数。

    该输入框最多支持填写10组目标数据库的IP地址或者域名信息,多个值需要使用英文逗号隔开。例如:192.168.0.1:8000,192.168.0.2:8000。

    数据库用户名

    目标数据库对应的数据库用户名。

    数据库密码

    数据库用户名和密码将被系统加密暂存,直至该任务删除后清除。

  4. “设置同步”页面,选择同步对象类型和同步对象,单击“下一步”

    图7 设置同步

    表11 同步模式和对象

    参数

    描述

    流速模式

    流速模式支持限速和不限速,默认为不限速。限速模式只对全量阶段生效,增量阶段不生效。

    • 限速

      自定义的最大同步速度,全量同步过程中每个任务(多任务时为每个子任务)的同步速度将不会超过该速度。

      当流速模式选择了“限速”时,您需要通过流速设置来定时控制同步速度。流速设置通常包括限速时间段和流速大小的设置。默认的限速时间段为“全天限流”,您也可以根据业务需求选择“时段限流”。自定义的时段限流支持最多设置10个定时任务,每个定时任务之间不能存在交叉的时间段,未设定在限速时间段的时间默认为不限速。

      流速的大小需要根据业务场景来设置,不能超过9999MB/s。

      图8 设置流速模式
    • 不限速
      对同步速度不进行限制,通常会最大化使用源数据库的出口带宽。该流速模式同时会对源数据库造成读消耗,消耗取决于源数据库的出口带宽。比如源数据库的出口带宽为100MB/s,假设高速模式使用了80%带宽,则同步对源数据库将造成80MB/s的读操作IO消耗。
      说明:
      • 限速模式只对全量阶段生效,增量阶段不生效。
      • 您也可以在创建任务后修改流速模式。具体方法请参见修改流速模式

    全量同步对象类型

    全量同步对象类型,可选同步表结构、同步数据、同步索引,根据实际需求进行选择要同步内容。

    • 同步数据为必选项。
    • 选择同步表结构的时候目标库不能有同名的表。
    • 不选同步表结构的时候目标库必须有相应的表,且要保证表结构与所选表结构相同。

    增量阶段冲突策略

    该冲突策略特指增量同步中的冲突处理策略,全量阶段的冲突默认忽略。冲突策略目前支持如下形式:

    • 忽略

      当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),将跳过冲突数据,继续进行后续同步。选择忽略可能导致源库与目标库数据不一致。

    • 报错

      当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),同步任务将失败并立即中止。

    • 覆盖

      当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),将覆盖原来的冲突数据。

    对象同步范围

    对象同步范围支持选择增量DDL同步。您可以根据业务需求选择是否进行同步。

    DML同步

    选择需要同步的DML操作,默认都勾选。

    不勾选Delete则不会同步源库增量数据中的Delete语句,可能会导致数据不一致,因此存在数据冲突或任务失败的风险。

    增量支持DDL

    对象同步范围勾选“增量DDL”时可见,选择增量同步的DDL类型,用户根据需求可选择“默认值”“自定义”

    • “默认值”
      • 表级同步情况下:已选定的同步表相关在Binlog中DDL将全部同步,与同步表无关的对象DDL将不同步。常见的DDL有ADD_COLUMN,MODIFY_COLUMN,ALTER_COLUMN等。
    • “自定义”

      用户根据需求,选择需要同步的DDL类型,不同链路支持的DDL类型以界面显示为准。

      “对象同步范围”勾选“增量DDL”,但是“自定义”未选择任一DDL类型时,默认不同步DDL。

    同步对象

    左侧框是源数据库对象,右侧框是已经选择的对象,可选表级同步、导入对象文件,您可以根据业务场景选择对应的数据进行同步。

    • 在同步对象右侧已选对象框中,可以使用对象名映射功能进行源数据库和目标数据库中的同步对象映射,具体操作可参考对象名修改(对象名映射)
    • 选择导入对象文件,具体步骤和说明可参考导入同步对象
    说明:
    • 选择对象的时候支持对展开的库进行搜索,以便您快速选择需要的数据库对象。
    • 如果有切换源数据库的操作或源库同步对象变化的情况,请在选择同步对象前单击右上角的,以确保待选择的对象为最新源数据库对象。
    • 当对象名称包含空格时,名称前后的空格不显示,中间如有多个空格只显示一个空格。
    • 选择的同步对象名称中不能包含空格。

  5. 在“数据加工”页面,根据需要选择数据加工的方式。

    • 如果不需要数据加工,单击“下一步”。
    • 如果需要数据加工,可选择“数据过滤”、“附加列”或“列加工”,参考数据加工章节,设置相关规则。
    图9 数据加工

  6. “预检查”页面,进行同步任务预校验,校验是否可进行。

    • 查看检查结果,如有不通过的检查项,需要修复不通过项后,单击“重新校验”按钮重新进行任务预校验。

      预检查不通过项处理建议请参见《数据复制服务用户指南》中的“预检查不通过项修复方法”。

    • 预检查完成后,且所有检查项结果均通过时,单击“下一步”
      说明:

      所有检查项结果均通过时,若存在请确认项,需要阅读并确认详情后才可以继续执行下一步操作。

  7. “任务确认”页面,设置同步任务的启动时间、任务异常通知设置、SMN主题、时延阈值、任务异常自动结束时间,并确认同步任务信息无误后,勾选协议,单击“启动任务”,提交同步任务。

    图10 任务启动设置

    表12 任务启动设置

    参数

    描述

    启动时间

    同步任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。

    说明:

    预计同步任务启动后,会对源数据库和目标数据库的性能产生影响,建议选择业务低峰期,合理设置同步任务的启动时间。

    任务异常通知设置

    该项为可选参数,开启之后,选择对应的SMN主题。当同步任务状态、时延指标或数据异常时,系统将发送通知。

    SMN主题

    “任务异常通知设置”项开启后可见,需提前在SMN上申请主题并添加订阅。

    SMN主题申请和订阅可参考《消息通知服务用户指南》

    时延阈值

    在增量同步阶段,源数据库和目标数据库之间的同步有时会存在一个时间差,称为时延,单位为秒。

    时延阈值设置是指时延超过一定的值后(时延阈值范围为0到3600s),DRS可以发送告警通知。告警通知将在时延稳定超过设定的阈值6min后发送,避免出现由于时延波动反复发送告警通知的情况。

    说明:
    • 当时延阈值设置为0时,不会发送通知给收件人。
    • 首次进入增量同步阶段,会有较多数据等待同步,存在较大的时延,属于正常情况,不在此功能的监控范围之内。
    • 设置时延阈值之前,需要设置任务异常通知。

    数据异常通知

    该项为可选参数,开启之后,当同步任务数据异常时,系统将发送通知。

    任务异常自动结束时间(天)

    设置任务异常自动结束天数,输入值必须在14到100之间,默认值14。

    说明:
    • 仅按需计费任务支持设置任务异常自动结束时间,包年/包月任务不支持。
    • 异常状态下的任务仍然会计费,而长时间异常的任务无法续传和恢复。设置任务异常自动结束天数后,异常且超时的任务将会自动结束,以免产生不必要的费用。

  8. 同步任务提交后,您可在“实时同步管理”页面,查看并管理自己的任务

    • 您可查看任务提交后的状态,状态请参见任务状态说明
    • 在任务列表的右上角,单击刷新列表,可查看到最新的任务状态。
    • 对于未启动、状态为配置中的任务,DRS默认保留3天,超过3天DRS会自动删除后台资源,当前任务状态不变。当用户再次配置时,DRS会重新申请资源,此时DRS任务IP会发生改变。
    • 对于公网网络类型的任务,由于DRS需要在任务结束后删除后台资源,所以该任务绑定的弹性公网IP需要等待一段时间,才能恢复为解绑状态。

提示

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

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容