Skip to content
文档
数据迁移
数据传输

数据传输

操作指南

1. 插件安装

打开Chat2DB,点击左侧工具栏的插件图标,点击右侧的安装/更新插件按钮,点击安装即可。

'plugins'

2. 打开插件

点击Launch打开插件,等待插件加载完成即可。

'launch'

3. 创建任务

'create'

  1. Name字段中输入任务的名称。例如,task-01qu6D。
  2. 根据需要选择虚拟机的规格。选项包括:Tiny,Small,Medium,Large。默认选择的是Tiny。
  • 每个规格的说明:
  • Tiny:最小规格,使用2核4G内存,1线程用于迁移。
  • Small、Medium和Large规格根据需求增加资源。
  1. 源数据库引擎 (Source database engine)
  • 选择源数据库引擎类型。在此例中,选择的是MySQL。
  • 支持的版本包括:5.6、5.7、8.0。
  • 支持的数据库类型包括:自建数据库、ECS自建数据库和云数据库。
  1. 目标数据库引擎 (Target database engine)
  • 选择目标数据库引擎类型。在此例中,选择的是MySQL。
  • 支持的版本包括:5.6、5.7、8.0。
  • 支持的数据库类型包括:自建数据库、ECS自建数据库和云数据库。

'create'

在填写完所有必要的信息后,点击页面右下角的Create按钮,即可创建新任务。

'create'

4. 选择源和目标数据库

  1. 数据库类型
  • Source information(源信息)部分选择你的原始数据库类型。在这个例子中,我们选择了"MySQL"。
  • 同样,在Target information(目标信息)部分选择你想要将数据迁移到的目标数据库类型。同样,这里也选择了"MySQL"。
  1. 数据库IP:端口
  • Source information部分输入你的原始数据库的IP地址和端口号。
  • 对于Target information部分,你需要提供目标数据库的IP地址和端口号。
  1. 账户与密码
  • Source information部分需要你提供访问原始数据库的用户名和密码。用户名默认是root。
  • Target information部分则需要你提供用于访问目标数据库的用户名和密码。
  • 如果你不知道用户名,可以点击下方Auth script操作,获取授权用户。
  1. SSL运输
  • 如果你的数据库配置了SSL加密连接,则可以选择启用SSL传输。否则,请保持禁用状态。
  1. 测试连接
  • 输入所有必要的信息后,你可以点击Test connection来验证你提供的信息是否正确,并且能够成功地连接到你的数据库。

'test_connection'

5. 迁移选项

  1. Objects:
  • 这一区域将会列出一系列的数据库名称。你可以通过勾选这些项目来决定哪些数据库表、视图、函数、存储过程、触发器等应该被包含在迁移过程中。

'Migration'

  1. Migration:

Speed: 这里提供了迁移速度的选择,默认为Unlimited,即不限速。如果需要限制迁移的速度,可以在此处更改。

  • Migrate type: 提供了三种选项——Objects, Data, 和 Sync incremental。根据需求,你可以选择要迁移的对象定义、数据或者增量同步。
  • Objects: 表示迁移数据库中的对象,比如表、视图等。
  • Data: 表示迁移数据库中的数据。
  • Sync incremental: 表示进行增量同步,只迁移自上次迁移以来发生改变的内容。

Sync policy: 这一部分允许你指定同步策略。

  • Sync topology: 可以选择单向或双向同步。
  • unidirectional: 单向同步,数据只会从源数据库流向目标数据库。
  • Bidirectional: 双向同步,数据可以在两个数据库之间相互流动。
  • Conflict policy: 当冲突出现时的处理方式。
  • Cover and continue: 覆盖已有数据并继续迁移。
  • Ignore and continue: 忽略冲突并继续迁移。
  • Report an error and stop: 报错并停止迁移。
  • Filter DDL: 是否过滤掉数据定义语言(DDL)语句。DDL通常用来创建、修改或删除数据库结构。
  1. Upload migrate object configuration file / Download template file:
  • 如果你已经准备好了迁移对象的配置文件,可以通过点击"Upload migrate object configuration file"上传它。
  • 如果需要下载模板文件以便手动编辑,可以点击"Download template file"。

'Migration'

  1. Advanced configuration:
  • 点击此链接可以进入更详细的配置页面,对迁移任务进行高级定制。

'Migration' 'Migration'

  1. 确认信息:
  • 填写完所有必要的信息后,你可以点击Next前进至下一步。

在执行数据库迁移前,确保已仔细检查所有的选项,特别是冲突政策和同步策略,因为它们可能会直接影响到迁移的结果。

6. 映射和过滤

'mapping'

  • 字段映射是指将一个表中的字段映射到另一个表中的字段,以便在两个表之间进行数据交换或数据同步。 在MySQL数据库迁移任务配置过程中,用户可以设置库、表、字段在目标库的对象映射名。 如下图所示,【文字显示墨绿色,加了-sy后缀】的为修改后目标端Schema、表、字段的映射名显示。

注意:修改后的映射名请以英文字母开头,仅允许英文字母(区分大小写)、数字、下划线组合,长度小于等于64

'mapping'

'mapping'

迁移完成后,我们进入目标库查看,可以看到库,表,字段均显示为迁移过程中我们设置的映射名。

'mapping'

  • 在数据迁移或数据复制中,where可以用来过滤出需要迁移或复制的数据,避免不必要的数据传输和处理,提高迁移或复制效率。 如下图,在MySQL数据库迁移任务配置过程中,点击映射与过滤,支持自由配置数据过滤条件,在文本框输入过滤条件后,移出文本框,在过滤结果预览中就可以查看到过滤效果,以便用户确认是否满足预期。

'mapping'

设置好表的过滤条件后,在全量和增量同步过程中就会自动带上过滤条件。保证过滤后的数据才会同步到目标端。 此处我们设置的where过滤条件为:CategoryId > 7,过滤结果如下。

  • 源端数据展示:

'mapping'

  • 目标端数据展示:

'mapping'

目标库只同步到了CategoryId > 7的数据,符合目标预期。

7. 最后确认

  • 目标数据库中存在相同名字的对象将会被重建,所以在迁移前请仔细检查目标数据库以避免覆盖和损坏数据。建议在非高峰时段进行数据迁移,以减少数据更新和DDL变更的影响。

  • 在确认阶段,用户需要查看提示信息,理解潜在的问题和风险,如数据库版本不一致可能导致的迁移失败。 同时,他们也可以查看预检查结果,如果有错误或警告,应解决这些问题后再执行迁移。如果一切正常,用户可以点击Save task and execute来保存并执行迁移任务或者点击Save task来暂时保存相关配置信息。

'confirm'

8. 迁移结果

  • 迁移完成时,用户可以查看迁移结果,包括迁移的进度、状态、错误信息等。

'result'

'result'