检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
方案概述 应用场景 传统数据库面临硬件成本高,维护难度大等问题,企业上云诉求强烈,本章介绍如何通过DRS服务,将MySQL分库分表数据库迁移至华为云DDM。 方案架构 本示例源端为一个分库分表关联两个MySQL实例,目标端为一个DDM关联两个RDS for MySQL实例,通过D
源库参数WAL_LEVEL校验 PostgreSQL或者GaussDB为源同步时,源数据库“wal_level”参数必须为logical。若不为logical,则无法对源库的增量日志进行逻辑解码,进而无法进行增量同步。 不通过原因 源数据库参数wal_level配置错误,不为logical。
源库是否为TaurusDB备库 源数据库为TaurusDB备库时,不存在Binlog日志,会导致任务增量迁移失败。 不通过原因 源数据库为只读备库,不存在binlog日志。 处理建议 建议更换源数据库,将TaurusDB实例主库作为源数据库后,重新进行预检查。 父主题: 数据库参数检查
通过DRS迁移MySQL分库分表总流程 本实践的主要任务流如图1所示: 图1 操作流程 表1 迁移流程 序号 步骤 说明 1 迁移前构造数据 迁移前在源端数据库构造数据,供迁移后查看是否迁移成功。 2 目标端DDM准备 创建VPC和安全组:为创建实例准备网络资源。 创建DDM实例:创建目标端DDM实例。
索引名是否支持 校验同步对象的索引名称是否符合规范,索引名规则: 不支持大写字母 不能包括 , /, *, ?, ", <, >, |, 空格, 逗号, # 支持使用冒号: 不能以这些字符-, _, + 开头 不能包括 . 或 … 长度不能超过 255 个字符 不通过原因 存在不支持索引名。
实例类型是否匹配迁移模式 检查MongoDB实例类型是否匹配迁移模式,若不匹配,则会导致迁移失败。 不通过原因 创建DRS任务时,源数据库实例类型选择为集群,但是源库为非集群。 处理建议 当前源数据库实例类型选择为集群时,请确保实际输入的源库类型是集群。 父主题: 数据库参数检查
源库用户属于Oracle Oracle为源增量同步时,DRS会对源数据库账号进行检查。 不通过原因 源库账号属于Oracle,而非用户本身,无法进行增量同步。 处理建议 使用用户本身的账号,不要使用Oracle自有的账号。 父主题: 数据库参数检查
源库输入DN数量校验 GaussDB分布式版自建为源同步场景 表1 源库输入DN数量校验 预检查项 源库输入DN数量校验。 描述 用户输入DN数量与源库DN数量检查。 待确认原因及处理建议 待确认原因:用户输入DN数量与源库DN数量不一致。 处理建议:用户输入DN数量与源库DN数
源库是否正确开启补充日志 Oracle为源同步场景 表1 源库是否正确开启补充日志 预检查项 源库是否正确开启补充日志。 描述 Oracle源库未开启库级补充日志或级别不满足要求,会导致同步失败。 不通过提示及处理建议 不通过原因:源库补充日志级别告警,源库补充日志设定为库的主键
同步对象名称校验 源数据库如果存在不符合要求的数据库名、schema名或或表名,可能会导致迁移失败。 不通过原因 源数据库存在不符合要求的数据库名、schema名或表名,源数据库中库名、schema名及表名只能包含字母、下划线、中划线和数字。 处理建议 请修改不符合要求的对象名称,确保对象符合命名要求。
源数据库是否处于备机状态 PostgreSQL为源的全量+增量实时同步任务,源库不可以为备机,否则,无法进行增量同步。全量实时同步任务,源库可以为备机,但是参数“hot_standby_feedback”必须为on,否则可能导致同步失败。 不通过原因 全量+增量实时同步任务,源库为备机,无法进行增量同步。
源库实例ChangeStream接口是否可用 MongoDB->DDS迁移场景 表1 源库实例ChangeStream接口是否可用 预检查项 源库实例ChangeStream接口是否可用。 描述 检查源库实例ChangeStream接口是否可用。 不通过提示及处理建议 不通过原因
源库CDC数据保留时间是否足够 检查Microsoft SQL Server源库CDC数据保留时间是否足够。源数据库CDC数据保留时间不足1天,会导致增量同步异常。请修改为1440分钟(1天)或以上,建议4320分钟(3天)。 不通过原因 源库CDC数据保留时间太短,不足1天,会导致增量同步异常。
目标库是否存在同步对象 GaussDB->MySQL同步场景 表1 目标库是否存在同步对象 预检查项 目标库是否存在同步对象。 描述 检查目标库是否存在同步对象。 不通过提示及处理建议 不通过原因:部分表无法同步,这些表的特征为:表名称的字母相同但大小写不同。 处理建议:建议修改
源端是否存在触发器或事件 MySQL迁移场景 表1 源端是否存在触发器或事件 预检查项 源端是否存在触发器或事件。 描述 为了避免触发器或事件的自动触发机制导致非预期数据操作,从而引起两边数据的不一致,DRS任务将在用户结束任务时启动触发器或事件的迁移,如果您在任务运行中,关闭或
Oracle源库是否开启归档日志 Oracle->MySQL数据库迁移、同步场景 表1 Oracle源库是否开启归档日志 预检查项 Oracle源库是否开启归档日志。 描述 Oracle到MySQL的增量迁移,要求源数据库打开归档日志。 不通过提示及处理建议 不通过原因:Oracle源库未打开归档日志。
源数据库是否具有日志解析权限 Oracle为源增量同步时,DRS会对源数据库连接用户权限进行检查。源数据库连接用户不具有日志解析权限,会导致增量迁移失败。 不通过原因 源数据库用户不具有EXECUTE_CATALOG_ROLE角色。 源数据库用户不具有日志解析权限。 处理建议 建
目标数据库磁盘可用空间是否足够 DRS在迁移阶段,为了保证迁移性能和传输的稳定性,采用了行级并行的迁移方式。当源数据库数据紧凑情况下,通过DRS迁移后目标磁盘空间使用量会大于源数据库。DRS在预检查阶段会对目标数据库磁盘可用空间进行检查,若空间不足,可能会导致迁移失败。 不通过原因
源数据库binlog日志是否开启 检查源数据库是否开启了Binlog日志功能。MySQL增量迁移时,源数据库的Binlog日志必须打开。 不通过原因 源数据库未开启Binlog日志功能。 处理建议 如果源数据库为本地自建MySQL库,建议参考如下操作开启Binlog日志。 查看binlog日志是否开启。
源库是否已开启复制功能 Redis迁移场景 表1 源库是否已开启复制功能 预检查项 源库是否已开启复制功能检查。 描述 源库是否已开启复制功能。 不通过提示及处理建议 不通过原因:源库未开启复制功能,请首先开启源库的复制功能。 处理建议:请连接源库设置enable-replication配置项为1。