检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本实践介绍在华为云弹性云服务器 ECS上构建社区版MySQL和创建TaurusDB实例,并使用数据复制服务DRS将本地MySQL数据库的数据迁移至TaurusDB。通过DRS提供的实时迁移任务,实现在数据库迁移过程中业务中断时间最小化。 应用场景 企业业务高速发展,传统数据库扩容性差,迫切需要分布式化改造。
导出数据库备份文件 本小节介绍了数据库全量备份文件和事务日志(增量)备份文件的导出方法。 检查本地数据库参数配置。 该操作为全量+增量迁移的必操作项,仅进行全量迁移时,可以跳过该步骤。 由于数据库存在日志截断和收缩配置,在导出全量备份文件前,需要将数据库恢复模式配置成“完整”模式
在进行数据迁移时,需要源数据库开启GTID功能。源数据库GTID关闭情况下,源数据库存在主备切换时,可能会导致任务失败。 不通过原因 源数据库GTID未开启。 处理建议 源数据库是RDS for MySQL实例时,GTID默认为开启状态且不支持关闭。如果GTID未开启,需要联系RDS for MySQL运维人员进行处理。
创建数据库评估任务 登录UGO控制台。 单击左侧导航栏“结构迁移 > 数据库评估”。 在评估数据库页面,单击右上角的“创建项目”。 查看Oracle源数据库准备和授权,源库准备完成后,单击“启动创建”。 进入基本信息页面,完成基本信息的填写。 基本信息填写完成后,“开始测试”高亮显示。
提交查询数据库对象信息 功能介绍 提交查询数据库对象信息。例如: 当type取值为source时,查询源库库表信息。 当源库库表信息有变化时,type取值为source,is_refresh取值为true。 当已同步到目标库的库表信息过大,需要提前将数据加载到缓存中时,type取值为synchronized。
object_scope String 该数据库在实时同步场景下的类型。 target_root_db Object 数据库对象迁移或同步目标库信息,两层到三层数据库同步需要填写。 详情请参见表5。 object_info Map<String,DatabaseObject> 数据库对象迁移或同步信息。
将MySQL同步到Oracle 支持的源和目标数据库 表1 支持的数据库 源数据库 目标数据库 RDS for MySQL(5.5、5.6、5.7、8.0版本) 本地自建数据库 ECS自建数据库 使用建议 DRS任务启动和全量数据同步阶段,请不要在源数据库执行DDL操作,否则可能导致任务异常。
列加工 入云 MySQL->MySQL 支持 支持 支持 入云 MySQL->GaussDB分布式版 支持 支持 支持 入云 MySQL->GaussDB主备版 支持 支持 支持 入云 MySQL->GaussDB(DWS) 支持 支持 暂不支持 入云 MySQL->GaussDB(for
目标数据库是否存在与源数据库同名的数据库下的同名非空集合 MongoDB迁移场景 表1 目标数据库是否存在与源数据库同名的数据库下的同名非空集合 预检查项 目标数据库是否存在与源数据库同名的数据库下的同名非空集合。 描述 校验用户提供的目标数据库是否存在与源数据库同名的数据库下的
本实践主要包含以下内容: 介绍如何将自建MySQL迁移到RDS for MySQL实例。 RDS for MySQL产品优势 低成本 享更多的服务 只需支付实例费用,无需其他硬件、托管等费用。 超高性能 极致用户体验 100%兼容MySQL应用。 高并发性能满足苛刻性能要求。 支持大量连接,响应更快速。
源数据库同名对象检查 MySQL->PostgreSQL同步场景 表1 源数据库同名对象检查 预检查项 源数据库同名对象检查。 描述 源数据库选择有多个数据库且未映射到同一个数据库,或者选择的数据库之间存在同名,可能会同步失败。 不通过提示及处理建议 不通过原因:PostgreS
源数据库索引长度检查 Oracle->MySQL、Oracle->TaurusDB迁移、同步场景 表1 源数据库索引长度检查 预检查项 源数据库存在超过目标库索引列长度限制的索引。 描述 源数据库存在超过目标库索引列长度限制的索引,则导致迁移失败。 不通过提示及处理建议 不通过原
源数据库的expire_logs_days参数设置为0。 处理建议 如果源数据库为云上RDS for MySQL实例,可参考设置RDS for MySQL本地Binlog日志清理内容,将expire_logs_days设置在合理的范围内。 如果源数据库为本地自建MySQL,请参考如下步骤修复。
采集数据库位点信息 功能介绍 采集数据库位点信息。 接口约束 目前仅支持MySQL->GaussDB(DWS)同步场景。 仅支持部分Region使用,详情参考终端节点。 URI POST /v5/{project_id}/jobs/{job_id}/collect-db-position
源数据库信息检查 检查分片节点是否和mongos节点属于同一个集群 源数据库的均衡器状态检查 源库的实例类型检查 源库长事务检查 父主题: 预检查不通过项修复方法
将DDM同步到MySQL 支持的源和目标数据库 表1 支持的数据库 源数据库 目标数据库 DDM实例 本地自建MySQL数据库 ECS自建MySQL数据库 其他云上MySQL数据库 RDS for MySQL 数据库账号权限要求 在使用DRS进行同步时,连接源库和目标库的数据库账号需要
源端MySQL发生主备倒换,DRS任务会丢数据吗 如果源端MySQL已开启了GTID模式,在发生主备倒换时,DRS会记录binlog位点信息,在主备倒换后接续位点继续进行任务,不会丢数据。 源端MySQL可通过修改数据库配置文件方式将GTID开启,重启数据库后生效。 参考命令如下:
创建RDS for MySQL实例 本章节介绍创建RDS for MySQL实例并构造测试数据。 创建实例 登录华为云控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击左侧的服务列表图标,选择“数据库 > 云数据库 RDS”。 单击“购买数据库实例”。 配置实例名称和实例基本信息。
数据库参数sql_mode的一致性检查 源数据库和目标数据库的sql_mode参数一致性检查,若不一致,可能会导致迁移失败,建议将参数变为一致。 不通过原因 源数据库和目标数据库的sql_mode参数不一致。 处理建议 修改源数据库或者目标数据库的sql_mode参数,使其保持一致。
<新的最大长度>; 如果为RDS for MySQL实例,可通过修改数据库group_concat_max_len参数实现,详情请参考修改实例参数章节。 更多其他类型数据库修改group_concat_max_len的方法,可参考对应数据库的使用说明。 父主题: 数据库参数检查