检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
行数对比任务结果不一致,目标数据库执行SQL超时 操作场景 数据级行对比不一致,提示"目标数据库执行SQL超时"。 图1 对比不一致 问题分析 由于比对的表数据量比较大,行比对超时,默认超时时间1小时。 解决方案 重新进行行对比。 拆分需要进行对比的表,分批多次进行对比。 如果以
DRS主键或者唯一键不一致导致数据不一致需要怎样处理 场景描述 MySQL到MySQL实时同步,目标数据库已经存在表结构,增量阶段发现数据不一致,同时目标数据库结构与源数据库不同。 可能原因 目标数据库的唯一索引或者主键与源数据库不一致,尤其是目标数据库唯一索引(主键)比源数据库
源数据库和目标数据库的字符集是否一致 检查源数据库和目标数据库的数据库的字符集是否一致。当源数据库和目标数据库字符集不一致时,可能导致部分数据乱码、数据不一致等问题 不通过原因 源数据库和目标数据库字符集不一致。 处理建议 修改源数据库或者目标数据库字符集。 数据库为MySQL时,可通过以下方式进行修改:
为什么迁移前后数据库磁盘空间使用量不一致 可能原因 原因1:DRS在全量迁移阶段,为了保证迁移性能和传输的稳定性,采用了行级并行的迁移方式。当源数据库数据紧凑的情况下,通过DRS迁移到上云后,可能会出现数据膨胀现象,导致目标数据库磁盘空间使用量大于源数据库磁盘空间使用量。 并行时顺序插入原理可参考图1。
源库表结构是否一致 多对一同步时,源库选择的多个对象表结构需要保持一致才能进行同步。 不通过原因 源库表结构不一致,无法进行多对一同步。 处理建议 修改源库需要多对一但结构不一致的表,使其结构一致。 父主题: 数据库参数检查
collation_server的一致性检查 源数据库和目标数据库的参数collation_server不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的collation_server参数不一致。 处理建议 修改源数据库或者目标数据库的collation_server参数,使其保持一致。
源库和目标库数据库固定集合一致性检查。 描述 检查源库和目标库数据库固定集合是否一致,若不一致,则导致迁移失败。 不通过提示及处理建议 不通过原因:源数据库的集合是固定集合,但是目标数据库存在和源库固定集合名称相同的集合。 处理建议:为了保证数据的一致性,可以删除目标库已经存在的和源数据库
表结构一致性检查 DRS在选择仅同步数据时,会对用户源端和目标端的表结构一致性进行检查。 不通过原因 目标端表的字段未涵盖源端表的所有字段。 列名的大小写问题,源和目标端是不同数据库的情况下,源端表列名会转成小写和目标端比较。 列名中包含空格或者特殊字符等。 处理建议 返回设置同
表中不能存在名称字母相同但大小写不同的列。 已选择的表在目标库不存在,或与源库的表结构不一致。 目标库和源库的约束不一致,可能在后续同步中因约束不一致导致同步失败。 处理建议 删除源库表中名称字母相同但大小写不同的列,或者变更源库表中名称字母相同但大小写不同的列名称。 表在目标库
time_zone的一致性检查 源数据库和目标数据库的time_zone参数不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的参数time_zone或system_time_zone不一致。 处理建议 修改源数据库或者目标数据库的time_zone(timezone
源数据库和目标数据库的group_concat_max_len参数不一致,这可能导致任务迁移完毕后,业务查询出现截断,建议将参数变为一致。 不通过原因 源数据库和目标数据库的group_concat_max_len参数不一致。 处理建议 修改源数据库或者目标数据库的group_conc
数据库参数sql_mode的一致性检查 源数据库和目标数据库的sql_mode参数一致性检查,若不一致,可能会导致迁移失败,建议将参数变为一致。 不通过原因 源数据库和目标数据库的sql_mode参数不一致。 处理建议 修改源数据库或者目标数据库的sql_mode参数,使其保持一致。 如果为
数据同步失败。 不通过原因 已选择的schema在目标库不存在。 部分表无法同步,这些表的特征为:表名称的字母相同但大小写不同。 已选择的表在目标库不存在,或与源库的表结构不一致。 处理建议 建议在目标库创建上述schema。创建schema语句参考模板: CREATE SCHEMA
货币金额格式是否一致 PostgreSQL同步时,源数据库和目标数据库的货币金额格式是否一致,若不一致,会导致同步失败。 不通过原因 源数据库和目标数据库的“lc_monetary”参数值不同。 处理建议 修改数据库“lc_monetary”参数值,使源库和目标库的货币金额格式保持一致。
事务隔离级别一致性校验 MySQL迁移时,源数据库和目标数据库的事务隔离级别需要保持一致。 不通过原因 源数据库和目标数据库的事务隔离级别不一致。 处理建议 修改数据库隔离级别参数(tx_isolation或者transaction_isolation),使源库和目标库的事务隔离级别保持一致。
源库操作是迁移中不支持的DDL,DML会导致数据对比不一致。 对目标库操作 进行添加字段,drs任务是正常的。 对表进行修改字段,减少字段,会导致drs任务失败。 进行手动添加记录,修改,删除记录,会导致drs对比数据结果不一致。 扩容操作是rds内部操作,不影响drs任务。 父主题:
用户对比:对源库和目标库的账号名称、权限进行对比。 周期性对比:定时对源数据库与目标数据库表的行数或对象进行对比并展示结果,需要用户开启并设置对比策略。 在使用对比功能查看数据一致性时,建议优先使用行数对比,确定行数是否一致。如果出现行数不一致的情况,可以针对不一致的表,使用内容对比,来确定具体有哪些数据不一致。
目标库数据的时区、时钟不一致导致迁移后数据不一致。DRS会检查源数据库是否存在TTL索引的集合,如果存在,需要删除TTL索引或者不迁移存在TTL索引的集合。 待确认原因 待迁对象存在TTL索引,会因为源数据库和目标库数据的时区、时钟不一致导致迁移后数据不一致。 处理建议 如果关注
ture后,在迁移该表的索引和数据时,会出现对象不存在导致任务失败情况。 跳过对象成功后,会导致对比结果不一致。 跳过无主键表的table_structure会导致数据不一致,还可能出现表不存在导致任务失败的情况,请确认后再进行操作。 跳过无主键表后出现表不存在导致DRS任务失败
写入操作,否则会出现数据污染或者表结构不一致,并最终导致业务端和灾备端数据不一致。 灾备中不支持无主键表分布式事务。 操作步骤 在“实时灾备管理”页面,单击“创建灾备任务”,进入创建灾备任务页面。 在“灾备实例”页面,填选区域、项目、任务名称、描述、灾备实例信息,单击“开始创建”。