检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DRS主键或者唯一键不一致导致数据不一致需要怎样处理 场景描述 MySQL到MySQL实时同步,目标数据库已经存在表结构,增量阶段发现数据不一致,同时目标数据库结构与源数据库不同。 可能原因 目标数据库的唯一索引或者主键与源数据库不一致,尤其是目标数据库唯一索引(主键)比源数据库
为什么迁移前后数据库磁盘空间使用量不一致 可能原因 原因1:DRS在全量迁移阶段,为了保证迁移性能和传输的稳定性,采用了行级并行的迁移方式。当源数据库数据紧凑的情况下,通过DRS迁移到上云后,可能会出现数据膨胀现象,导致目标数据库磁盘空间使用量大于源数据库磁盘空间使用量。 并行时顺序插入原理可参考图1。
行数对比任务结果不一致,目标数据库执行SQL超时 操作场景 数据级行对比不一致,提示"目标数据库执行SQL超时"。 图1 对比不一致 问题分析 由于比对的表数据量比较大,行比对超时,默认超时时间1小时。 解决方案 重新进行行对比。 拆分需要进行对比的表,分批多次进行对比。 如果以
collation_server的一致性检查 源数据库和目标数据库的参数collation_server不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的collation_server参数不一致。 处理建议 修改源数据库或者目标数据库的collation_server参数,使其保持一致。
time_zone的一致性检查 源数据库和目标数据库的time_zone参数不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的参数time_zone或system_time_zone不一致。 处理建议 修改源数据库或者目标数据库的time_zone(timezone
源库和目标库数据库固定集合一致性检查 MongoDB迁移场景 表1 源库和目标库数据库固定集合一致性检查 预检查项 源库和目标库数据库固定集合一致性检查。 描述 检查源库和目标库数据库固定集合是否一致,若不一致,则导致迁移失败。 不通过提示及处理建议 不通过原因:源数据库的集合是
源数据库和目标数据库的字符集是否一致 检查源数据库和目标数据库的数据库的字符集是否一致。当源数据库和目标数据库字符集不一致时,可能导致部分数据乱码、数据不一致等问题 不通过原因 源数据库和目标数据库字符集不一致。 处理建议 修改源数据库或者目标数据库字符集。 数据库为MySQL时,可通过以下方式进行修改:
配置灾备任务 本章节介绍配置DRS灾备实例,包含源库和目标库的配置。 操作步骤 在“实时灾备管理”页面,选择已创建的灾备任务,单击“编辑”。 根据界面提示,将灾备实例的弹性公网IP加入生产中心RDS for MySQL实例所属安全组的入方向规则,选择TCP协议,端口为生产中心RDS
表结构一致性检查 DRS在选择仅同步数据时,会对用户源端和目标端的表结构一致性进行检查。 不通过原因 目标端表的字段未涵盖源端表的所有字段。 列名的大小写问题,源和目标端是不同数据库的情况下,源端表列名会转成小写和目标端比较。 列名中包含空格或者特殊字符等。 处理建议 返回设置同
事务隔离级别一致性校验 MySQL迁移时,源数据库和目标数据库的事务隔离级别需要保持一致。 不通过原因 源数据库和目标数据库的事务隔离级别不一致。 处理建议 修改数据库隔离级别参数(tx_isolation或者transaction_isolation),使源库和目标库的事务隔离级别保持一致。 对于MySQL
MongoDB迁移时,TTL索引会因为源数据库和目标库数据的时区、时钟不一致导致迁移后数据不一致。DRS会检查源数据库是否存在TTL索引的集合,如果存在,需要删除TTL索引或者不迁移存在TTL索引的集合。 待确认原因 待迁对象存在TTL索引,会因为源数据库和目标库数据的时区、时钟不一致导致迁移后数据不一致。 处理建议
源库表结构是否一致 多对一同步时,源库选择的多个对象表结构需要保持一致才能进行同步。 不通过原因 源库表结构不一致,无法进行多对一同步。 处理建议 修改源库需要多对一但结构不一致的表,使其结构一致。 父主题: 数据库参数检查
配置说明 配置方式 通过修改GaussDB数据库后台pg_hba.conf文件进行配置。 pg_hba.conf配置约束 配置文件时,请依次从上到下配置,配置的优先级由高到低。 pg_hba.conf配置信息格式 每个白名单规则都要遵循格式:TYPE DATABASE USER ADDRESS
染或者表结构不一致,并最终导致业务端和灾备端数据不一致。 操作步骤 在“实时灾备管理”页面,单击“创建灾备任务”,进入创建灾备任务页面。 在“灾备实例”页面,填选区域、项目、任务名称、描述、灾备实例信息,单击“开始创建”。 任务信息 图1 灾备任务信息 表4 任务和描述 参数 描述
对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在名称字母相同但大小写不同的列。 已选择的表在目标库不存在,或与源库的表结构不一致。 目标库和源库的约束不一致,可能在后续同步中因约束不一致导致同步失败。 处理建议 删除源库表中名称字母相同但大小写不同的列,或者变更源库表中名称字母相同但大小写不同的列名称。
数据库参数group_concat_max_len一致性检查 源数据库和目标数据库的group_concat_max_len参数不一致,这可能导致任务迁移完毕后,业务查询出现截断,建议将参数变为一致。 不通过原因 源数据库和目标数据库的group_concat_max_len参数不一致。 处理建议 修改源数据库或者目
数据库参数sql_mode的一致性检查 源数据库和目标数据库的sql_mode参数一致性检查,若不一致,可能会导致迁移失败,建议将参数变为一致。 不通过原因 源数据库和目标数据库的sql_mode参数不一致。 处理建议 修改源数据库或者目标数据库的sql_mode参数,使其保持一致。
货币金额格式是否一致 PostgreSQL同步时,源数据库和目标数据库的货币金额格式是否一致,若不一致,会导致同步失败。 不通过原因 源数据库和目标数据库的“lc_monetary”参数值不同。 处理建议 修改数据库“lc_monetary”参数值,使源库和目标库的货币金额格式保持一致。 如果为自建的数据库,可通过命令行方式修改:
源数据库和目标数据库对应的性能参数值改为不一致。 若您想将对比结果不一致的参数改为一致结果,请参考如下流程进行修改: 对齐源库和目标库的参数值。 当源库和目标库对应的参数值出现不一致时,选择需要修改的参数,单击“一键对齐”按钮,系统将帮您自动填充目标数据库的参数值,使其和源库对应的参数值保持一致。
在“创建对比任务”页面,分别选择“对比类型”、“对比方式”、“对比时间”和“对象选择”后,单击“是”,提交对比任务。 图3 创建对比任务 对比类型:分为行数对比和内容对比。 对比方式:分为静态对比和动态对比两种。 静态对比:对源数据库和目标数据库进行一次全量内容对比,内容对比完成后对比任务结束,适用于无数据变化的非业务时间。