检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DRS主键或者唯一键不一致导致数据不一致需要怎样处理 场景描述 MySQL到MySQL实时同步,目标数据库已经存在表结构,增量阶段发现数据不一致,同时目标数据库结构与源数据库不同。 可能原因 目标数据库的唯一索引或者主键与源数据库不一致,尤其是目标数据库唯一索引(主键)比源数据库
创建ECS并安装MySQL客户端 请参考创建ECS(MySQL服务器)创建MySQL客户端的弹性云服务器。 确保和MySQL服务器所在ECS配置成相同Region、相同可用区、相同VPC、相同安全组。 不用购买数据盘。 云服务器名配置为:ecs-client。 其他参数同MySQL服务器的ECS配置。
行数对比任务结果不一致,目标数据库执行SQL超时 操作场景 数据级行对比不一致,提示"目标数据库执行SQL超时"。 图1 对比不一致 问题分析 由于比对的表数据量比较大,行比对超时,默认超时时间1小时。 解决方案 重新进行行对比。 拆分需要进行对比的表,分批多次进行对比。 如果以
为什么迁移前后数据库磁盘空间使用量不一致 可能原因 原因1:DRS在全量迁移阶段,为了保证迁移性能和传输的稳定性,采用了行级并行的迁移方式。当源数据库数据紧凑的情况下,通过DRS迁移到上云后,可能会出现数据膨胀现象,导致目标数据库磁盘空间使用量大于源数据库磁盘空间使用量。 并行时顺序插入原理可参考图1。
collation_server的一致性检查 源数据库和目标数据库的参数collation_server不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的collation_server参数不一致。 处理建议 修改源数据库或者目标数据库的collation_server参数,使其保持一致。
源数据库和目标数据库的字符集是否一致 检查源数据库和目标数据库的数据库的字符集是否一致。当源数据库和目标数据库字符集不一致时,可能导致部分数据乱码、数据不一致等问题 不通过原因 源数据库和目标数据库字符集不一致。 处理建议 修改源数据库或者目标数据库字符集。 数据库为MySQL时,可通过以下方式进行修改:
自建MySQL服务器 创建VPC和安全组 创建ECS(MySQL服务器) 安装社区版MySQL 创建ECS并安装MySQL客户端 测试自建MySQL性能 父主题: 实施步骤
源库服务器计算机名是否一致 源数据库和目标数据库存在相同的计算机名,不符合迁移要求。 不通过原因 源数据库和目标数据库存在相同的计算机名。 处理建议 建议修改源数据库的计算机名,然后重启计算机生效。 父主题: 数据库参数检查
time_zone的一致性检查 源数据库和目标数据库的time_zone参数不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的参数time_zone或system_time_zone不一致。 处理建议 修改源数据库或者目标数据库的time_zone(timezone
创建ECS(MySQL服务器) 购买弹性云服务器,用于安装MySQL社区版。 登录华为云管理控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击页面左上角,选择“计算 > 弹性云服务器 ECS”。 单击“购买云服务器”。 配置弹性云服务器参数。 选择通用计算型s6.xlarge
MongoDB迁移时,TTL索引会因为源数据库和目标库数据的时区、时钟不一致导致迁移后数据不一致。DRS会检查源数据库是否存在TTL索引的集合,如果存在,需要删除TTL索引或者不迁移存在TTL索引的集合。 待确认原因 待迁对象存在TTL索引,会因为源数据库和目标库数据的时区、时钟不一致导致迁移后数据不一致。 处理建议
事务隔离级别一致性校验 MySQL迁移时,源数据库和目标数据库的事务隔离级别需要保持一致。 不通过原因 源数据库和目标数据库的事务隔离级别不一致。 处理建议 修改数据库隔离级别参数(tx_isolation或者transaction_isolation),使源库和目标库的事务隔离级别保持一致。 对于MySQL
源库和目标库数据库固定集合一致性检查 MongoDB迁移场景 表1 源库和目标库数据库固定集合一致性检查 预检查项 源库和目标库数据库固定集合一致性检查。 描述 检查源库和目标库数据库固定集合是否一致,若不一致,则导致迁移失败。 不通过提示及处理建议 不通过原因:源数据库的集合是
源库表结构是否一致 多对一同步时,源库选择的多个对象表结构需要保持一致才能进行同步。 不通过原因 源库表结构不一致,无法进行多对一同步。 处理建议 修改源库需要多对一但结构不一致的表,使其结构一致。 父主题: 数据库参数检查
数据库参数group_concat_max_len一致性检查 源数据库和目标数据库的group_concat_max_len参数不一致,这可能导致任务迁移完毕后,业务查询出现截断,建议将参数变为一致。 不通过原因 源数据库和目标数据库的group_concat_max_len参数不一致。 处理建议 修改源数据库或者目
long times, may lack some data for this Job! 可能原因 源库存在长时间未提交的XA事务,可能会导致事务对应的数据丢失,造成数据不一致。 解决方案 用户在源库执行XA RECOVER语句,找出一直未提交的XA事务,后可执行 xa commit
对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在名称字母相同但大小写不同的列。 已选择的表在目标库不存在,或与源库的表结构不一致。 目标库和源库的约束不一致,可能在后续同步中因约束不一致导致同步失败。 处理建议 删除源库表中名称字母相同但大小写不同的列,或者变更源库表中名称字母相同但大小写不同的列名称。
数据库参数sql_mode的一致性检查 源数据库和目标数据库的sql_mode参数一致性检查,若不一致,可能会导致迁移失败,建议将参数变为一致。 不通过原因 源数据库和目标数据库的sql_mode参数不一致。 处理建议 修改源数据库或者目标数据库的sql_mode参数,使其保持一致。
安装社区版MySQL 初始化磁盘并安装社区版MySQL。 登录弹性云服务器 登录华为云管理控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击页面左上角,选择“计算 > 弹性云服务器 ECS”。 在弹性云服务器名称“ecs-mysql”所在行单击“远程登录”。 选择“CloudShell登录”。
迁移服务器磁盘可用空间是否足够 表1 迁移服务器磁盘可用空间是否足够 预检查项 迁移服务器磁盘可用空间是否足够。 描述 查看迁移服务器的可用空间是否足够,若空间不足,会导致迁移失败。 不通过提示及处理建议 不通过原因:源数据库选择数据量大于迁移实例剩余空间大小。 处理建议:请重新修改同步对象。