OceanBase 提供数据迁移功能以帮助您在线将其他数据源的数据实时的迁移到 OceanBase 上。您可以通过创建迁移项目来启动与检测数据迁移过程。
前提条件
- 已创建 OceanBase 数据传输作业实例。如何创建传输作业实例,请参考创建作业实例。
- 已创建源端和目标端的终端节点。如何创建终端节点,请参考创建终端节点。
- 请确认源端和目标端数据库均可通过网络联通,且当前登录阿里云账号具备数据库的操作权限。
- 确认数据类型。目前 OceanBase 仅支持以下类型的数据同步:bigint、varchar、tinyint、text、int、timestamp、blob、datetime、decimal、mediumblob、date、time、bit、char和binary。
背景信息
创建迁移项目主要分为三个步骤:
- 配置源端与目标端:指定将某个源端节点迁移至某个目标端节点。
- 设置迁移类型及对象:定制迁移项目组合,并指定需要迁移的数据库。全量数据迁移过程中如果源库有数据更新,这部分更新数据不保证被迁移到目标实例。
- 自动执行预检查:
- 检查账号权限。
- 检查数据库账号连通性。
- 检查源端表的数据类型,目前只支持 bigint、varchar、tinyint、text、int、timestamp、blob、datetime、decimal、mediumblob、date、time、bit、char和binary。
- 对 MySQL 类型的源节点进行数据库、表、字段的编码验证,支持的编码格式包括 UTF-8、utf8_general_ci、utf8mb4_general_ci 和 utf8mb4。
注意
- 数据迁移只会将源库的数据(结构)复制一份到目标数据库,并不会对源数据(结构)造成影响。
- 数据迁移过程中,请勿进行 DDL 操作,否则可能导致迁移失败。
- 目前仅支持迁移同类型的数据库,例如 MySQL 数据库到 OceanBase MySQL 数据库。
操作步骤
- 登录 OceanBase 管理控制台。
在左侧导航栏中单击数据传输 > 项目列表。
- 在页面右上角单击创建迁移项目。
- 设置源端与目标端。
配置 | 说明 |
源端名称 | 源终端节点名称。如果没有合适的待选节点,单击新建源终端节点 。创建一个源终端节点。 |
目标端名称 | 目标端节点的名称。如果没有合适的待选节点,单击新建目标端 创建一个目标端节点。 |
作业实例 | 处理迁移项目所用的作业实例。如果没有合适的作业实例,单击新建作业实例,创建一个新的作业实例。 说明 新建的作业实例需 1~3 分钟才能生效。 |
项目名称 | 当前迁移项目的项目名称。系统会自动为您拟定一个项目名称,由源节点和目标节点名称自动生成。 |
- 单击下一步。
- 设置迁移类型及对象。
- 设置迁移类型。为保证迁移数据一致性,建议选择:结构迁移+全量数据迁移+增量数据迁移。
- 设置迁移对象。在左侧源端节点中勾选需要迁移的数据库,并将其添加到右侧的目标端数据库中。
- 可选:确认是否启用高级设置。
配置 | 说明 |
增量记录保留时间 | 增量事务语句缓存在作业实例的最大时间。支持设置的范围为1~2400小时,默认为72小时。 此选项选择过大时会影响作业实例的磁盘空间。 |
全量迁移并发数 | 全量迁移的并发数量。支持设置的范围为1~256个,默认为16个。 并发量越高,全量迁移速度越快。 |
- 确认信息无误后,单击预检查。预检查阶段会对源端表的数据类型等方面进行全量检查,只有通过预检查才能成功创建迁移任务。
- 单击启动。