检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
迁移方案概览 由于安全原因,数据库的IP地址有时不能暴露在公网上,但是选择专线网络进行数据库迁移,成本又高。这种情况下,您可以选用数据复制服务提供的备份迁移,通过将源数据库的数据导出成备份文件,并上传至对象存储服务,然后恢复到目标数据库。备份迁移可以帮助您在云服务不触碰源数据库的情况下,实现数据迁移。
对象名修改(对象名映射) 实时同步功能可以支持源数据库和目标数据库中的同步对象(包括数据库、schema、表)的名称不同。对象名映射功能主要在如下场景使用: 对象名修改:如果同步的数据库对象在目标数据库中的命名和源数据库中不同,那么可以使用DRS提供的对象名映射功能进行修改。 多
MySQL或MariaDB不同版本之间的语法差异 对于源数据库和目标数据库的版本有差异的迁移和同步链路,由于不同版本之间的部分特性差异,可能会出现语法兼容性问题。 DRS接收到的源数据库Binlog日志中里保存的是原始的执行SQL语句,这些SQL语句将会直接在目标数据库中执行,如
Kafka消息格式 同步到Kafka集群中的数据以Avro、JSON和JSON-C格式存储。不同链路支持的数据格式可参考表1: 表1 支持的数据格式 数据流向 Avro JSON JSON-C MySQL->Kafka 支持 支持 支持 Oracle->Kafka 支持 支持 暂不支持
MySQL->GaussDB MySQL->GaussDB B、MYSQL和PG兼容性模式 表1 数据类型映射关系 数据类型(MySQL) 数据类型(GaussDB) 是否支持映射 CHAR CHARACTER 支持,如果源库该类型的字段含有占用超过一个字节的字符,需适当增加目标库该字段的长度。
双AZ任务倒换 DRS实时同步任务在创建时可选择任务类型为“双AZ”或“单AZ”。双AZ任务为一主一备的经典高可用架构,在任务创建后,DRS会同时创建一主一备两个子任务,当主AZ任务发生异常,DRS会自动启动备AZ任务继续进行同步,提高同步任务的可靠性。 DRS目前支持以下链路在创建时进行任务类型的选择:
同步任务约束与限制 为保障数据同步任务的正常运行,针对不同的链路,DRS在使用上存在一定的约束与限制。 MySQL为源使用须知 入云: MySQL同步到MySQL MySQL同步到GaussDB(for MySQL) MySQL同步到PostgreSQL MySQL同步到GaussDB主备版
源数据库恢复模式检查 检查源数据库是否存在备份恢复模式不是FULL的数据库。 不通过原因 源数据库存在备份恢复模式不是FULL的数据库。 处理建议 对每个恢复模式不是FULL的数据库执行如下SQL语句: USE [master] GO ALTER DATABASE [数据库名] SET
MySQL数据同步对源数据库和目标数据库有什么影响 以下数据以MySQL2MySQL大规格实时同步任务为例,不同规格对数据库的连接数存在差异,仅供参考。 DRS对源数据库的压力及影响 全量(初始化)阶段,DRS需要从源库将所有存量数据查询一次。DRS查询使用简单SQL语句,对源库
MongoDB数据库迁移过程中,源数据库出现内存溢出(OOM)是什么原因 场景描述 在进行MongoDB数据库迁移的过程中,出现源数据库内存溢出(OOM),导致源数据库不可用,迁移失败。 问题分析 出现上述内存溢出可能存在如下原因: 源数据库的mongod服务单独部署在一台机器上
审计日志格式说明 创建DRS录制回放任务时,源数据库引擎可选不同来源。不同源数据库来源对应的审计日志格式不同,具体说明可参考如下说明。 表1 审计日志参数说明 参数 说明 quo 包裹符号,一般审计日志中的SQL是会被该符号包裹起来。 column 每行总列数。 separator
MySQL->PostgreSQL 表1 数据类型映射关系 数据类型(MySQL) 数据类型(PostgreSQL) 是否支持映射 BIGINT NUMERIC|BIGINT 支持 BINARY BYTEA 支持 BIT BIT 支持 BLOB BYTEA 支持 BOOLEAN BOOL
数据加工 数据复制服务支持对同步的对象进行加工,即可以为选择的对象添加规则。各链路支持的加工规则不一样,目前仅部分链路支持数据加工,支持数据加工链路参考表1,具体操作方法可参考对应的内容。 表1 支持数据加工的链路 同步方向 数据流向 数据过滤 附加列 列加工 入云 MySQL->MySQL
如何确保业务数据库的全部业务已经停止 业务切换时可通过如下方法确保业务数据库的全部业务已经停止: 在源数据库端执行如下语句,查看当前是否还存在有业务连接 。 show processlist; 图1 查看是否存在业务连接 可选:如果源数据库有业务连接,则通过结果中Host列的值来查找对应的业务进程并将其停止。
迁移前构造数据 迁移前需要在源库构造一些数据类型,供迁移完成后验证数据。 前提条件 已知源端数据库的IP地址,端口,账户和密码。 操作步骤 根据源端数据库的IP地址,通过数据库连接工具连接数据库。 根据支持的数据类型,在源库执行语句构造数据。 登录源端数据库。 进入任意一个待迁移的逻辑库。
同步后进行数据校验 当任务状态变为“增量同步”,说明全量同步已经完成,全量同步完成后,登录GaussDB查看数据迁移结果。 等待迁移任务状态变为“增量同步”。 单击任务名称,进入任务详情页。 在“同步进度”页签查看全量同步结果。 如图所示,本次实践将TEST_INFO库中DATA
引擎类型说明 DRS各引擎类型对应取值可参考引擎类型说明。 表1 引擎类型说明 引擎类型(engine_type) 说明 对应源数据库取值(db_type) 对应目标数据库取值(db_type) mysql MySQL到MySQL迁移、MySQL到MySQL同步场景使用。 mysql
time_zone的一致性检查 源数据库和目标数据库的time_zone参数不一致,可能会导致迁移失败。 不通过原因 源数据库和目标数据库的参数time_zone或system_time_zone不一致。 处理建议 修改源数据库或者目标数据库的time_zone(timezone
灾备阶段失败报错,关键词“A dml without pk write target db fail” 场景描述 MySQL为源灾备任务报错,日志界面提示:A dml without pk write target db fail。 可能原因 无主键表由于缺乏行的唯一性标志,在网
DRS全量阶段迁移过慢或者进度不更新可能原因 问题现象 DRS在进行全量迁移时,出现迁移耗时很久或者迁移任务进度不更新的情况。 排查方法 排查源库迁移数据大小: 数据迁移进度是按表数量来计算百分比,当数据迁移进度长时间不更新,可能因为有某几个表数据量过大,迁移时间较长。可以在“进