- 最新动态
- 服务公告
-
产品介绍
- 图解数据复制服务
- 什么是数据复制服务
- 支持的数据库
- 产品优势
- 功能特性
- 规格说明
- 产品架构和功能原理
-
数据类型映射关系
- MySQL->PostgreSQL
- MySQL->GaussDB
- MySQL->Oracle
- MySQL->CSS/ES
- Oracle->MySQL
- Oracle->TaurusDB
- Oracle->GaussDB
- Oracle->DDM
- Oracle->GaussDB(DWS)
- Oracle->PostgreSQL
- TaurusDB->Oracle
- TaurusDB->CSS/ES
- GaussDB->MySQL
- GaussDB->GaussDB(DWS)
- GaussDB->Oracle
- DB2 for LUW->GaussDB
- DB2 for LUW->GaussDB(DWS)
- PostgreSQL->GaussDB
- PostgreSQL->GaussDB(DWS)
- TiDB->TaurusDB
- Microsoft SQL Server->GaussDB(DWS)
- Microsoft SQL Server->GaussDB
- Microsoft SQL Server->MySQL
- Microsoft SQL Server->TaurusDB
- Microsoft SQL Server->PostgreSQL
- 安全
- 权限管理
- 委托管理
- 委托管理(新)
- 约束与限制
- 访问数据复制服务
- 与其他服务关系
- 基本概念
- 计费说明
- 准备工作
- 快速入门
-
用户指南
- 实时迁移
- 备份迁移
-
实时同步
- 同步方案概览
- 数据同步拓扑介绍
-
入云
- 将MySQL同步到MySQL
- 将MySQL同步到PostgreSQL
- 将MySQL同步到GaussDB分布式版
- 将MySQL同步到GaussDB集中式版
- 将MySQL同步到GaussDB(DWS)
- 将MySQL同步到TaurusDB
- 将MySQL同步到MariaDB
- 将PostgreSQL同步到PostgreSQL
- 将PostgreSQL同步到GaussDB(DWS)
- 将PostgreSQL同步到GaussDB集中式版
- 将PostgreSQL同步到GaussDB分布式版
- 将Oracle同步到MySQL
- 将Oracle同步到TaurusDB
- 将Oracle同步到GaussDB集中式版
- 将Oracle同步到GaussDB分布式版
- 将Oracle同步到DDM
- 将Oracle同步到GaussDB(DWS)
- 将Oracle同步到PostgreSQL
- 将DDM同步到MySQL
- 将DDM同步到GaussDB(DWS)
- 将DDM同步到DDM
- 将DB2 for LUW同步到GaussDB集中式版
- 将DB2 for LUW同步到GaussDB分布式版
- 将DB2 for LUW同步到GaussDB(DWS)
- 将TiDB同步到TaurusDB
- 将Microsoft SQL Server同步到GaussDB(DWS)
- 将Microsoft SQL Server同步到GaussDB集中式版
- 将Microsoft SQL Server同步到GaussDB分布式版
- 将Microsoft SQL Server同步到Microsoft SQL Server
- 将Microsoft SQL Server同步到MySQL
- 将Microsoft SQL Server同步到TaurusDB
- 将Microsoft SQL Server同步到PostgreSQL
- 将MongoDB同步到DDS
- 将MariaDB同步到MariaDB
- 将MariaDB同步到MySQL
- 将MariaDB同步到TaurusDB
- 将TaurusDB同步到TaurusDB
- 将Cassandra同步到GeminiDB Cassandra
- 将Dynamo同步到GeminiDB Cassandra
- 将Dynamo同步到GeminiDB Dynamo
- 将AWS DocumentDB同步到DDS
- 将Redis 同步到GeminiDB Redis
- 将Redis集群同步到GeminiDB Redis
-
出云
- 将MySQL同步到MySQL
- 将MySQL同步到Kafka
- 将MySQL同步到CSS/ES
- 将MySQL同步到Oracle
- 将MySQL同步到MariaDB
- 将DDM同步到MySQL
- 将DDM同步到Oracle
- 将DDM同步到Kafka
- 将DDS同步到MongoDB
- 将DDS同步到Kafka
- 将PostgreSQL同步到PostgreSQL
- 将PostgreSQL同步到Kafka
- 将GaussDB分布式版同步到MySQL
- 将GaussDB分布式版同步到Oracle
- 将GaussDB分布式版同步到GaussDB(DWS)
- 将GaussDB分布式版同步到Kafka
- 将GaussDB分布式版同步到GaussDB分布式版
- 将GaussDB分布式版同步到GaussDB集中式版
- 将GaussDB分布式版同步到PostgreSQL
- 将GaussDB集中式版同步到MySQL
- 将GaussDB集中式版同步到Oracle
- 将GaussDB集中式版同步到GaussDB(DWS)
- 将GaussDB集中式版同步到Kafka
- 将GaussDB集中式版同步到GaussDB分布式版
- 将GaussDB集中式版同步到GaussDB集中式版
- 将GaussDB集中式版同步到PostgreSQL
- 将TaurusDB同步到MySQL
- 将TaurusDB同步到GaussDB(DWS)
- 将TaurusDB同步到Kafka
- 将TaurusDB同步到CSS/ES
- 将TaurusDB同步到Oracle
- 将MariaDB同步到MariaDB
- 将Microsoft SQL Server同步到Kafka
- 将GeminiDB Redis同步到Redis
- 将GeminiDB Redis同步到Redis集群
-
自建到自建
- 将MySQL同步到Kafka
- 将MySQL同步到CSS/ES
- 将MySQL同步到GaussDB集中式版
- 将MySQL同步到GaussDB分布式版
- 将Oracle同步到Kafka
- 将Oracle同步到GaussDB集中式版
- 将Oracle同步到GaussDB分布式版
- 将PostgreSQL同步到Kafka
- 将PostgreSQL同步到GaussDB集中式版
- 将PostgreSQL同步到GaussDB分布式版
- 将GaussDB集中式版同步到MySQL
- 将GaussDB集中式版同步到Oracle
- 将GaussDB集中式版同步到Kafka
- 将GaussDB集中式版同步到GaussDB分布式版
- 将GaussDB集中式版同步到GaussDB集中式版
- 将GaussDB集中式版同步到PostgreSQL
- 将GaussDB分布式版同步到MySQL
- 将GaussDB分布式版同步到Oracle
- 将GaussDB分布式版同步到Kafka
- 将GaussDB分布式版同步到GaussDB分布式版
- 将GaussDB分布式版同步到GaussDB集中式版
- 将GaussDB分布式版同步到PostgreSQL
- 将DB2 for LUW同步到GaussDB集中式版
- 将DB2 for LUW同步到GaussDB分布式版
- 将Microsoft SQL Server同步到Kafka
- 双向同步
- 任务管理
- 标签管理
- 连接诊断
- 查看异常数据
- 对接云审计服务
- 对接云监控服务
- 对接云日志服务
- 同步场景操作参考
- 附录
- 数据订阅
- 实时灾备
- 录制回放
- 校验任务
-
最佳实践
- 最佳实践汇总
- 实时迁移
- 备份迁移
- 实时同步
- 实时灾备
- 安全最佳实践
- 安全白皮书
-
API参考
- 使用前必读
- API概览
- 如何调用API
- 快速入门
- API v3(推荐)
-
API v3(不再推广)
-
公共接口管理
- 批量创建任务
- 批量测试连接
- 批量测试连接-集群模式
- 批量修改任务
- 批量数据库对象选择
- 批量预检查
- 批量查询预检查结果
- 批量设置任务限速
- 批量获取数据库参数
- 修改数据库参数
- 批量启动任务
- 批量续传/重试
- 批量暂停任务
- 批量结束任务或删除任务
- 批量修改源库/目标库密码
- 批量设置definer
- 创建对比任务
- 查询对比结果
- 查询租户任务列表
- 批量查询任务详情
- 批量查询任务状态
- 批量配置异常通知
- 查询可用的Node规格
- 查询数据级表对比任务列表
- 创建数据级表对比任务
- 取消对比任务
- 立即启动数据级表对比任务
- 查询行数对比总览
- 查询行数对比详情
- 查询内容对比总览
- 查询内容对比详情
- 查询内容对比差异
- 创建对象级对比任务
- 查询对象对比任务概览
- 查询对象对比任务详情
- 导出对比任务结果文件
- 下载对比任务结果文件
- 实时迁移管理
- 实时同步管理
- 实时灾备管理
-
公共接口管理
- API v5(公测中)
- 应用示例
- 权限策略和授权项
- 附录
- SDK参考
- 场景代码示例
-
常见问题
-
产品咨询
- 区域和可用区
- 什么是数据复制服务
- 数据复制服务是否支持关系型数据库的HA实例迁移
- 数据复制服务对源数据库有什么要求
- 数据复制服务对目标数据库有什么要求
- 数据复制服务是否采用了并发技术
- 数据复制服务是否采用了压缩技术
- DRS是否支持公有云和专属云间的数据库迁移
- 什么是配额
- DRS支持将DB2 for LUW迁移到PostgreSQL吗
- Microsoft SQL Server数据库能与本地数据库的数据实时同步吗
- 数据复制服务是否支持某个时间段的数据复制
- DRS支持断点续传吗
- 什么是单主/双主灾备
- 实时迁移、实时同步和实时灾备有什么区别
- MySQL迁移出现数据膨胀怎么办
- MySQL数据同步对源数据库和目标数据库有什么影响
- DRS需要源数据库停止业务吗
- 什么是SMN主题
- DRS任务的双AZ和单AZ有什么区别
- DRS是否支持只迁移表结构不迁移数据
- MySQL迁移、同步、灾备任务怎么迁移账号,是否支持修改密码
- 影响DRS任务速度的因素有哪些以及如何进行耗时预估
- DRS任务支持修改对象吗
- DRS是否支持同一实例不同库之间的同步
- 源或者目标数据库哪些操作,会影响DRS任务状态
- 数据订阅与MySQL到Kafka同步的区别
- 为什么DRS不支持部分他云只读实例的备库做源库
- DRS支持caching_sha2_password加密用户迁移吗
- 为什么迁移前后数据库磁盘空间使用量不一致
- DRS发送Kafka消息序列化方式是什么
- DRS可支持自建的MySQL数据库迁移吗?
- DRS会主动清空目标表数据吗?
- 入云,出云,自建有什么不同?
- DRS支持自建MySQL到自建MySQL的链路吗?
- DRS最小的传输粒度是什么?
- 在数据迁移过程中,对源库中目标库进行操作,会对DRS有什么影响?
- 网络及安全
- 权限管理
-
实时迁移
- 如何判断数据迁移任务可以停止
- MySQL迁移中Definer强制转化后如何维持原业务用户权限体系
- MySQL存储过程迁移上云后遇到调用权限的问题,如何解决
- 如何确保业务数据库的全部业务已经停止
- 迁移日志提示can not get agency token
- Oracle到MySQL迁移时,索引超长如何处理
- Oracle等异构数据库迁移到MySQL后的数据库排序规则为什么是utf8mb4_bin
- RDS for MySQL不支持MyISAM引擎表,迁移时MyISAM如何处理
- 低版本迁移至MySQL 8.0,应该注意哪些问题
- MongoDB数据库迁移过程中,源数据库出现内存溢出(OOM)是什么原因
- 如何关闭集合均衡器Balancer
- 如何批量导出、导入事件(event)和触发器(trigger)
- 源库参数lower_case_table_names=1时,为什么不允许迁移包含大写字母的库或者表
- 分片集群MongoDB迁移前清除孤儿文档
- MySQL账号迁移后权限显示多了反斜杠“\”
- 备份迁移
-
实时同步
- DRS支持直接同步不同schema的表到同一个schema吗
- DRS实时同步支持使用Online DDL工具吗
- DRS是否支持双向实时同步
- 源库Oracle为RAC集群时,为什么建议使用SCAN IP连接
- 源库Oracle补全日志检查方法
- 同步到GaussDB(DWS)的使用建议
- Oracle到GaussDB字符集兼容性说明
- 字符集不兼容导致数据乱码或者同步失败
- DRS增量同步怎样填启动位点
- MySQL或MariaDB不同版本之间的语法差异
- GaussDB远程连接配置方法
- GaussDB为源链路增量同步连接及端口说明
- DRS主键或者唯一键不一致导致数据不一致需要怎样处理
- 已经启动的任务,在配置中没有选DDL,需要重新支持,该怎么办?
- DRS同步任务支持MySQL8到MySQL5.7吗?
- DRS已经开始的同步任务如何增删表?
- GaussDB到Kafka导入对象文件支持表名映射和topic映射操作说明
- 数据订阅
- 实时灾备
- 数据对比
-
通用操作
- DRS界面信息重叠是什么原因
- 目标库读写设置是实例级还是库级
- MySQL源库设置了global binlog_format = ROW没有立即生效
- binlog_row_image参数设置为FULL没有立即生效
- 设置的密码不符合目标库的密码复杂度要求时,如何修改密码强度
- 如何设置MongoDB数据库分片集群的分片键
- 扩大带宽是否会对DRS正在进行中的任务产生影响
- 为什么MariaDB和SysDB下的数据不迁移或同步
- 多对一的场景约束及操作建议
- 一对多的场景约束及操作建议
- 数据复制服务的操作日志在哪里查看
- 为什么DRS发送提示信息的语言和页面不符
- 为什么DRS任务自动结束了
- DRS导出任务列表
- 已结束的任务还能重新启动吗
- 重置任务和重新创建任务有什么区别
- DRS支持一键反向功能吗
- 已经创建的SMN主题为什么选择不了
- 任务创建成功后是否支持修改SMN主题
- DDM为源链路源库分片数量和信息怎么填写
- 源端MySQL发生主备倒换,DRS任务会丢数据吗
- DRS对象选择时的全部迁移、表级迁移、库级迁移有什么区别
- 源库或目标库修改密码后如何操作
- 设置SMN主题策略,允许DRS发送消息通知
- DRS任务表数量太多导致任务超时怎么办
- DRS任务创建后支持修改源或目标数据库吗
- Api V5公测状态,是可用的吗?
- DRS进行暂停,结束任务,续传任务操作,需要多少时间?
- 计费相关
- 时延相关
-
产品咨询
-
故障排除
-
预检查不通过项修复方法
- 磁盘空间检查
-
数据库参数检查
- 源数据库binlog日志是否开启
- 源数据库binlog格式检查
- 源数据库expire_logs_days参数检查
- 源数据库和目标数据库的字符集是否一致
- 源数据库参数server_id是否符合增量迁移要求
- 源数据库和目标数据库表名大小写敏感性检查
- 源数据库中是否存在非ASCII字符的对象名称
- time_zone的一致性检查
- collation_server的一致性检查
- SERVER_UUID的一致性检查
- 数据库参数SERVER_ID的一致性检查
- 源数据库是否存在不允许使用的sql_mode值
- 数据库参数sql_mode的一致性检查
- 目标库sql_mode中no_engine值检查
- 数据库参数innodb_strict_mode一致性检查
- 校验源数据库参数max_wal_senders
- 源库参数WAL_LEVEL校验
- 源库参数MAX_REPLICATION_SLOTS校验
- 源数据库是否处于备机状态
- 源数据库参数log_slave_updates检查
- 源库与目标库的BLOCK_SIZE参数值是否相同
- binlog_row_image参数是否为FULL
- 事务隔离级别一致性校验
- 货币金额格式是否一致
- 源数据库中是否存在非ASCII字符的触发器名
- 源数据库集合索引个数检查
- 源数据库集合TTL索引检查
- 源库和目标库参数log_bin_trust_function_creators一致性校验
- 源库的GTID功能检查
- 目标库的GTID功能检查
- 目标库参数log_bin_trust_function_creators校验
- 异构数据库兼容性风险须知
- 检查目标库的max_allowed_packet参数
- 源数据库是否具有日志解析权限
- 源数据库ExpireLogsDays参数检查
- 源数据库字符集是否支持
- 源数据库表名和字段名长度检查
- 选择对象预检查
- 源库是否具有补充日志级别权限
- 源库对象名长度检查
- 目标库参数session_replication_role检查
- 数据库兼容类型检查
- 目标库排序字符集检查
- 索引名是否支持
- 表结构一致性检查
- 存在约束不验证添加前数据
- 目标库附加列检查
- 主备库是否开启隐式主键检查
- 源库表复制属性检查
- 源库指定名称的复制槽是否存在
- 实例类型是否匹配迁移模式
- 物理复制库检查
- 目标库大小写敏感检查
- 源库表是否开启了CDC
- 源库CDC数据保留时间是否足够
- 源库服务器计算机名是否一致
- 源库库名长度校验
- 同步对象名称校验
- 源数据库是否存在被禁用的聚集索引
- 源数据库实例是否为空
- 源数据库恢复模式检查
- 源数据库选择对象预检查
- 源库表类型校验
- 源数据库SQL Server代理运行状态检查
- 数据库参数group_concat_max_len一致性检查
- 源库表结构是否一致
- 字符集兼容性检查
- 源库存在长时间未提交的XA事务检查
- 目标数据库对象一致性检查
- 目标库同名库表检查
- 目标库用户(schema)及表是否已存在
- 源库迁移的索引列数量检查
- 源库索引列长度检查
- 源库Oracle与目标库中间件表结构(包括列数,主键索引)是否对齐
- 目标库是否存在同步对象
- 源数据库存在加密的数据库对象
- 源数据库表字段类型检查
- 主键列复制属性的校验
- 同步对象中是否存在包含longtext或longblob类型字段的表
- 映射数据库对象检查
- 源库是否为TaurusDB备库
- 映射到目标库中的type名是否合法
- 源库和目标库的字符集是否一致
- 源库是否已开启复制功能
- 源库最大数据库序号是否小于目标库最大数据库序号
- 源库间隔分区表检查
- 源库用户属于Oracle
- 源库输入DN数量校验
- 目标库对象一致性检查
- 源端存在不支持的外键引用操作
- 所选表是否包含延迟约束
- 源迁移库无主键表检查
- 是否禁用了外键或者同步的表在目标库上是否有外键
- 源库集合复合哈希索引检查
- 源库集合复合哈希分片键检查
- 源端表结构是否存在换行
- 同步对象中是否存在包含bytea、text类型字段的表
- 源库表结构是否存在虚拟列
- 检查源库的max_allowed_packet参数
- 源库补全日志级别检查
- Kafka Topic是否已创建
- 源库编码方式检查
- 数据库参数block_encryption_mode一致性检查
- 目标库区域类型及排序规则检查
- 源数据库列名检查
- 目标数据库schema及表对象一致性检查
- 源库加密表检查
- 源库中表的复制属性检查
- 源库分区表检查
- 源库存在不支持的生成列检查
- 源数据库参数ENABLE_SLOT_LOG校验
- 源库实例状态检查
- 目标库实例状态检查
- 数据库用户权限检查
- 数据库版本检查
- 网络情况
- 数据库对象检查
- 数据库配置项检查
- 冲突检查
- SSL连接检查
- 对象依赖关系检查
- 源数据库信息检查
- 预检查超时
-
失败案例
- 案例总览
-
MongoDB->DDS实时迁移
- 全量迁移失败报错,关键词“Prematurely reached end of stream”
- 全量迁移失败报错,关键词“not authorized on *** to execute command {***}”
- 全量迁移失败报错,关键词“GC overhead limit exceeded”
- 全量迁移失败报错,关键词“The background process is unavailable. Maybe it has been killed manually or by the operating system. Please restart the task if possible or wait for restarting by itself within 5 minutes.”
- 全量迁移失败报错,关键词“Timed out after 60000 ms while waiting to connect”
- 全量或增量迁移失败报错,关键词“Timed out after 60000 ms while waiting to connect”
- 全量或增量迁移失败报错,关键词“Invalid BSON field name ***”
- 增量迁移失败报错,关键词“Timed out after 60000 ms while waiting for a server that matches com.mongodb.client.internal”
- 增量迁移失败报错,关键词“Command failed with error *** (***):***. The full response is {***}”
-
MySQL->MySQL实时迁移和同步
- 全量阶段失败报错,关键词“Table *** doesn't exist”
- 全量阶段失败报错,关键词“The background process is unavailable”
- 全量阶段失败报错,关键词“Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server”
- 全量阶段失败报错,关键词“Error writing file *** (errno: 28 - No space left on device)”
- 全量阶段失败报错,关键词“The MySQL server is running with the --super-read-only option so it cannot execute this statement”
- 全量阶段失败报错,关键词“The table *** is full”
- 全量阶段失败报错,关键词“Unknown column *** in 'field list'”
- 全量阶段失败报错,关键词“Lock wait timeout exceeded; try restarting transaction”
- 全量阶段失败报错,关键词“Java heap space”
- 全量阶段失败报错,关键词“Table *** already exists”
- 全量阶段失败报错,关键词“temp table: *** not exist”
- 全量阶段失败报错,关键词“failed to create new session”
- 全量阶段失败报错,关键词“load table: *** failed”
- 全量阶段失败报错,关键词“extract table structure failed!”
- 全量阶段失败报错,关键词“read table=*** failed”
- 全量阶段失败报错,关键词“CANNOT UPDATE USER WITH NULL PASSWORD”
- 全量阶段失败报错,关键词“Access denied for user *** to database ***”
- 全量阶段失败报错,关键词“The MySQL server is running with the --super-read-only option so it cannot execute this statement”
- 全量阶段失败报错,关键词“Temporary file write failure.”
- 全量阶段失败报错,关键词“Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys”
- 全量阶段失败报错,关键词“Unknown database ***”
- 全量阶段失败报错,关键词“Access denied; you need (at least one of) the SUPER privilege(s) for this operation”
- 全量阶段失败报错,关键词“retry structures failed events”“Table *** doesn't exist”
- 全量阶段失败报错,关键词“ shard table=*** failed”
- 全量阶段失败报错,关键词“error when split table shard occur!”
- 全量阶段失败报错,关键词“Column name 'AUTO_PK_ROW_ID' is reserved.”
- 全量阶段失败报错,关键词“transfer account failed, can not find password from src DB”
- 全量阶段失败报错,关键词“Failed to add the foreign key constraint '***' to system tables”
- 全量阶段失败报错,关键词“Too many keys specified; max 64 keys allowed”
- 全量阶段失败报错,关键字“Unknown collation: 'utf8mb4_0900_ai_ci'”
- 全量阶段失败报错,关键字“exist some xa transactions for long times, may lack some data for this Job!.”
- 全量阶段失败报错,关键字“Invalid GIS data provided to function st_geometryfromtext'”
- 全量或增量阶段失败报错,关键词“Access denied for user ***”
- 全量或增量阶段失败报错,关键词“binlog is not existed”
- 全量或增量阶段失败报错,关键词“database log download failed”
- 全量或增量阶段失败报错,关键词“Can not read response from server”
- 全量或增量阶段失败报错,关键词“Communications link failure”
- 全量或增量阶段失败报错,关键词“EOF Packet received, master disconnected”
- 全量或增量阶段失败报错,关键词“Extract db create sql failed”
- 全量或增量阶段失败报错,关键词“load database structure failed in source database”
- 全量或增量阶段失败报错,关键词“load table: *** failed”
- 全量或增量阶段失败报错,关键词“Reached end of input stream”
- 全量或增量阶段失败报错,关键词“Read timed out”
- 全量或增量阶段失败报错,关键词“The background process is unavailable”
- 全量或增量阶段失败报错,关键词“Duplicate entry *** for key 'PRIMARY'”
- 全量或增量阶段失败报错,关键词“cause by: Index: ***, Size: ***”
- 全量或增量阶段失败报错,关键词“The offset and file name between src and parser is inconsistency”
- 全量或增量阶段失败报错,关键词“core process is not healthy or crashed”
- 全量或增量阶段失败报错,关键词“table info of table `***` from metadata miss”
- 全量或增量阶段失败报错,关键词“binlog parse fail, data dictionary may be not complete!”
- 全量或增量阶段失败报错,关键词“table *** record field size for insert/delete dml”
- 全量或增量阶段失败报错,关键词“service *** failed, cause by: Unable to connect to DBMS: ***”
- 全量或增量阶段失败报错, 关键词“The binlog fetch connection may be interrupted”
- 全量或增量阶段失败报错,关键词“Received error packet: errno - 1047, solstate - HY000 errmsg = Unknown command”
- 增量阶段失败报错,关键词“not equals to target db column count”
- 增量阶段失败报错,关键词“The MySQL server is running with the --super-read-only option”
- 增量阶段失败报错,关键词“you need (at least one of) the SUPER privilege(s) for this operation”
- 增量阶段失败报错,关键词“Can't DROP ***; check that column/key exists”
- 增量阶段失败报错,关键词“Can't find file: *** (errno: 2 - No such file or directory)”
- 增量阶段失败报错,关键词“Data truncation: Data too long for column”
- 增量阶段失败报错,关键词“Failed to read file header from”
- 增量阶段失败报错,关键词“Lock wait timeout exceeded”
- 增量阶段失败报错,关键词“Must seek before attempting to read next event”
- 增量阶段失败报错,关键词“Table *** already exists”
- 增量阶段失败报错,关键词“Table *** doesn't exist”
- 增量阶段失败报错,关键词“Table *** not found in database”
- 增量阶段失败报错,关键词“source has more columns than target”
- 增量阶段失败报错,关键词“Unknown storage engine”
- 增量阶段失败报错,关键词“Unknown table”
- 增量阶段失败报错,关键词“You have an error in your SQL syntax”
- 增量阶段失败报错,关键词“not illegal for mariaDb gtid position”
- 增量阶段失败报错,关键词“without PK execute failed”
- 增量阶段失败报错,关键词“Deadlock found when trying to get lock”
- 增量阶段失败报错,关键词“current serverUUID not equals to this session”
- 增量阶段失败报错,关键词“Slave has more GTIDs than the master has, using the master's SERVER_UUID.”
- 增量阶段失败报错,关键词“Operation not allowed when innodb_force_recovery > 0”
- 增量阶段失败报错,关键词“filter data in config condition filter error”
- MySQL->TaurusDB实时迁移和同步
- MySQL->CSS/ES实时同步
-
PostgreSQL->PostgreSQL实时同步
- 任务启动失败报错,关键词“Initialize logical replication stream failed, the source database may have a long transaction: ****.”
- 全量同步失败报错,关键词“function *** does not exist”
- 全量同步失败报错,关键词“relation *** does not exist”
- 全量同步失败报错,关键词“GC overhead limit exceeded”
- 全量同步失败报错,关键词“Java heap space”
- 全量同步失败报错,关键词“column *** of relation *** does not exist”
- 全量同步失败报错,关键词“column *** does not exist”
- 全量同步失败报错,关键词“type 'hstore' does not exist”
- 全量同步失败报错,关键词“type 'geometry' does not exist”
- 全量同步失败报错,关键词“Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections”
- 全量同步失败报错,关键词“invalid locale name”
- 全量同步失败报错,关键词“password must not equal user name”
- 全量同步失败报错,关键词“permission denied for schema ***”
- 全量或增量阶段失败报错,关键词“service *** failed, cause by: Unable to connect to DBMS: ***”
- 全量或增量阶段失败报错,关键词“Initialize logical replication stream failed, the source database may have a long transaction”
- 全量或增量阶段失败报错,关键词“memory required is *** MB, maintenance_work_mem is *** MB”
- 全量或增量阶段失败报错,关键词“temporary file size exceeds temp_file_limit”
- 增量同步失败报错,关键词“Table *** not found in target database”
- 增量同步失败报错,关键词“remaining connection slots are reserved”
- 增量同步失败报错,关键词“PL/pgSQL function *** line *** at SQL statement”
- 增量同步失败报错,关键词“The replication slot does not exist and the task is not started for the first time.”
-
Oracle为源实时同步
- 全量同步失败报错,关键词“has date/datetime: *** which is outside of dest allowed range”
- 全量或增量阶段失败报错,关键词“Got minus one from a read call”
- 增量同步失败报错,关键词“Source supplemental log level is PK/UI. Missing column data at delete+insert on ***”
- 增量同步失败报错,关键词“timeout when get next file log, maybe has been deleted, please check it.”
- 增量同步失败报错,关键词“Failed to construct kafka producer. ”
- 增量同步失败报错,关键词“Topic *** not present in metadata after 300000 ms”
- GaussDB为源实时同步
- MySQL为源实时灾备
- 备份迁移
- 录制回放
- 数据对比
-
预检查不通过项修复方法
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
TaurusDB到TaurusDB
支持的源和目标数据库
源数据库 |
目标数据库 |
---|---|
TaurusDB |
TaurusDB标准版、基础版 |
数据库账号权限要求
使用DRS创建录制回放任务时,连接源和目标数据库账号的权限建议保持一致,再启动任务。
使用须知
为了确保录制回放任务各个阶段的平顺,在创建任务前,请务必阅读以下使用须知。
类型名称 |
使用和操作限制 |
---|---|
任务启动前须知 |
|
解析阶段须知 |
解析文件选择完成后,不支持文件重命名操作。 |
回放阶段须知 |
回放SQL类型要求:目前仅支持SELECT、INSERT、DELETE、UPDATE、DDL。 |
结束任务须知 |
已结束的任务无法再次启动。 |
前提条件
- 已登录数据复制服务控制台。
- 账户余额大于等于0元。
- 满足录制回放支持的数据库类型和版本,详情请参见支持的数据库。
- 当用户创建DRS任务使用的是子账号时,请先确认已添加过委托。创建委托方法,可参考委托管理。
- 已阅读以上使用须知。
操作步骤
- 在“录制回放管理”页面,单击“创建录制回放任务”。
- 在“录制回放实例”页面,填选区域、项目、任务名称、描述、录制回放实例信息,单击“开始创建”。
- 任务信息
图1 录制回放任务信息
表3 任务和描述 参数
描述
区域
当前所在区域,可进行切换。
项目
当前区域对应的项目,可进行切换。
任务名称
任务名称在4到50位之间,必须以字母开头,可以包含字母、数字、中划线或下划线,不能包含其他的特殊字符。
描述
描述不能超过256位,且不能包含! = < > & ' " \ 特殊字符。
- 录制回放实例信息
图2 录制回放实例信息
表4 回放实例信息 参数
描述
数据流动方向
选择“本云”。
- 本云指两端均为华为云数据库实例的录制回放场景。
- 入云指目标数据库为华为云数据库实例且需将数据传入的场景。
源数据库引擎
选择“TaurusDB”。
流量文件来源
选择源数据库流量文件来源。
- 华为云API下载:通过华为云服务对应的API获取审计日志文件
- 华为云OBS下载:通过华为云OBS桶获取流量文件。
目标数据库引擎
选择“TaurusDB”。
网络类型
此处以“公网网络”为示例。
可根据业务场景选择“公网网络”、“VPC网络”和“VPN、专线”网络。
目标数据库实例
用户所创建的目标云数据库TaurusDB实例,请确认目标数据库已构建基线数据。
录制回放实例所在子网
请选择录制回放实例所在的子网。也可以单击“查看子网”,跳转至“网络控制台”查看实例所在子网帮助选择。
默认值为当前所选数据库实例所在子网,请选择有可用IP地址的子网。为确保回放实例创建成功,仅显示已经开启DHCP的子网。
指定公网IP
网络类型选择“公网网络”时可见,选择为DRS实例绑定的弹性公网IP。任务创建时,DRS将会自动绑定该弹性公网IP,等待任务结束后将自动解绑该弹性公网IP。
公网网络迁移产生的数据传输费用收取标准请参见:弹性公网IP价格计算器。
- 可用区
图3 可用区
表5 任务可用区 参数
描述
可用区
DRS任务创建的可用区,选择跟源或目标库相同的可用区性能更优。
- 企业项目和标签
图4 企业项目和标签
表6 企业项目和标签 参数
描述
企业项目
企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。请在下拉框中选择所在的企业项目,其中,default为默认项目。
更多关于企业项目的信息,请参见《企业管理用户指南》。
如果需要自定义企业项目,请在控制台右上角单击“企业”,进入“企业项目管理”页面创建,具体请参见《企业管理用户指南》中“创建企业项目”的内容。
标签
- 可选配置,对回放任务的标识。使用标签可方便管理您的任务。每个任务最多支持20个标签配额。
- 如果您的组织已经设定DRS的相关标签策略,则需按照标签策略规则为任务添加标签。标签如果不符合标签策略的规则,则可能会导致任务创建失败,请联系组织管理员了解标签策略详情。
- 任务创建成功后,您可以单击任务名称,在“标签”页签下查看对应标签。关于标签的详细操作,请参见标签管理。
说明:
对于创建失败的任务,DRS默认保留3天,超过3天将会自动结束任务。
- 任务信息
- 录制回放实例创建成功后,在“源库及目标库”页面,填选源库信息、流量文件、目标库信息和任务配置后,单击“目标库信息”处的“测试连接”,测试并确定与目标库连通后,单击“下一步”。
- 源数据库流量文件选择“华为云API下载”时,源库信息
图5 源库信息
表7 源库信息 参数
描述
流量文件来源
源数据库流量文件的来源。
数据库实例名称
选择已开启全量SQL功能的TaurusDB实例,TaurusDB全量SQL方式可参考开启全量SQL。
流量类型
目前仅支持选择“全量SQL”
时间范围
选择审计日志的时间范围。
- 源数据库流量文件选择“华为云OBS下载”时,源库信息
图6 源库信息
表8 源库信息 参数
描述
流量文件来源
源数据库流量文件的来源。
Access Key Id(AK)
访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。
Secret Access Key(SK)
与访问密钥ID结合使用的私有访问密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。
- 基于安全最小权限原则,AK/SK设置权限应该最小化。当临时AK/SK和永久AK/SK都可以使用时,建议用户使用临时AK/SK。永久AK/SK仅用于临时AK/SK无法满足的场景,例如日志过多下载时间过长时,使用临时AK/SK可能出现超时失效问题。
- 用户的AK/SK信息会被系统加密暂存,直至该任务删除后自动清除。
Security Token
使用临时AK/SK时,必须使用SecurityToken,且建议有效期设置为24小时,否则回放过程中可能无法获取到OBS桶信息。
桶名
流量文件存储的OBS桶名。
终端节点
OBS为每个区域提供一个终端节点,终端节点可以理解为OBS在不同区域的区域域名,用于处理各自区域的访问请求。
流量文件前缀
OBS桶中文件名的前缀,可以筛选查询到含有该前缀的文件信息。
流量类型
目前仅支持选择“审计日志”
选择流量文件
选择所需的流量文件。
- 目标库信息
图7 目标库信息
表9 目标库信息 参数
描述
数据库实例名称
默认为创建任务时选择的TaurusDB实例,不可进行修改。
回放连接IP
回放连接IP默认选择数据库实例主节点IP,若该实例存在数据库代理IP也可以自行选择。
数据库用户名
目标数据库对应的用户名。
数据库密码
目标数据库用户名对应的密码。
说明:
目标数据库用户名和密码将在回放过程中被加密暂存到DRS实例主机上,待该任务删除后会永久清除。
- 任务配置
图8 任务配置
表10 任务配置信息 参数
描述
SQL类型配置
选择回放到目标数据库SQL类型,默认选择SELECT,可选SELECT、INSERT、UPDATE、DELETE、DDL。
回放模式
可以选择“性能模式”或“事务模式”。
- 性能模式:可以设置并发连接数,回放过程中将按照设置的连接数在目标库回放。不保证源库的SQL在目标库回放时是同一个线程连接回放,回放性能较好。
- 事务模式:不可以设置并发连接数,将按照源库日志中连接信息动态调整连接数,可以保证源库同一个连接中的事务SQL顺序执行。
回放SQL过滤
支持SQL内容模糊匹配过滤,将按照输入的条件信息模糊匹配回放SQL,忽略大小写,对回放到目标库的SQL日志进行过滤处理,满足条件的SQL日志将会被过滤掉,支持配置10个过滤规则。
非条件过滤
该选项用于过滤SELECT,UPDATE,DELETE等类型的SQL中不包含条件的语句(即过滤SQL中没有where条件的语句)。
并发连接数
设置DRS录制回放任务的回放线程数,默认为8,输入值必须在1到100之间。
加速配置
设置录制回放任务在相同时间内回放SQL的总量与源库执行SQL总量的比值,但无法超过录制回放任务的性能上限。可选“不限制” 、“100%”、“200%”。
- 源数据库流量文件选择“华为云API下载”时,源库信息
- 在“预检查”页面,进行回放任务预校验,校验是否可进行。
- 查看检查结果,如有不通过的检查项,需要修复不通过项后,单击“重新校验”按钮重新进行任务预校验。
- 预检查完成后,且所有检查项结果均通过时,单击“下一步”。
- 在“任务确认”页面,设置回放任务的启动时间、任务异常通知设置、SMN主题、任务异常自动结束时间,并确认任务信息无误后,单击“启动任务”,提交回放任务。
图9 任务启动设置
表11 任务启动设置 参数
描述
启动时间
回放任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。
说明:
预计回放任务启动后,会对源数据库和目标数据库的性能产生影响,建议选择业务低峰期,合理设置任务启动时间。
任务异常通知设置
该项为可选参数,开启之后,选择对应的SMN主题。当回放任务状态异常时,系统将发送通知。
SMN主题
“任务异常通知设置”项开启后可见,需提前在SMN上申请主题并添加订阅。
SMN主题申请和订阅可参考《消息通知服务用户指南》。
任务异常自动结束时间(天)
设置任务异常自动结束天数,输入值必须在14到100之间,默认值14。
说明:
异常状态下的任务仍然会计费,而长时间异常的任务无法续传和恢复。设置任务异常自动结束天数后,异常且超时的任务将会自动结束,以免产生不必要的费用。
- 回放任务提交后,您可在“录制回放管理”页面,查看并管理自己的任务。
- 您可查看任务提交后的状态,状态请参见任务状态说明。
- 在任务列表的右上角,单击
刷新列表,可查看到最新的任务状态。
- 对于未启动、状态为配置中的任务,DRS默认保留3天,超过3天DRS会自动删除后台资源,当前任务状态不变。当用户再次配置时,DRS会重新申请资源。
- 对于公网网络类型的任务,由于DRS需要在任务结束后删除后台资源,所以该任务绑定的弹性公网IP需要等待一段时间,才能恢复为解绑状态。