云数据库ClickHouse提供实例之间的数据迁移,由目的端实例发起。您可以通过该功能实现相同内核版本实例之间或低版本实例向高版本实例的数据迁移。本文介绍如何在控制台上使用数据迁移功能。

前提条件

  • 将源实例的IP地址添加到目的实例的白名单中。
  • 将目的实例的IP地址添加到源实例的白名单中。
说明 您可以通过 select * from system.clusters;查看云数据库ClickHouse实例的IP地址。如何设置白名单,请参见 设置白名单

使用限制

  • 当前支持目的实例版本为20.8.7.15版本,源实例版本不做限制。
  • 云实例数据迁移仅支持全量迁移。
  • 非MergeTree(如外表、Log表等)仅进行数据迁移;物化视图仅进行结构迁移,不进行数据迁移。

迁移影响

源实例和目的实例在迁移过程中以及迁移完成后受到的影响如下。

实例类型 迁移过程 迁移完成
源实例 可读,不可写。 支持读写。
目的实例 不支持读写。 支持读写。

操作步骤

  1. 登录ClickHouse控制台
  2. 集群列表页面,单击目的集群ID。
  3. 单击左侧导航栏的实例迁移
  4. 实例迁移页面,单击创建迁移任务实例迁移
    说明 如果当前实例没有迁移记录,则显示 没有数据
  5. 进入到任务配置环节,选择源实例ID,并分别填写源实例和目的实例的数据库账号数据库密码选择源及目标实例
    注意 同地域实例之间可以进行迁移,不同地域之间不能进行数据迁移。
  6. 单击测试连接以进行下一步,进行实例连通性校验。
    • 测试连接成功,进行下一步。
    • 测试连接失败。
      • 如果提示源实例或者目的实例账号密码认证失败,请重新填写数据库账号数据库密码
      • 如果提示源实例和目的实例网络连通性错误,请检查源实例是否和目的实例在同一个VPC网络或者已经打通云企业网。
        说明 如何打通云企业网请参见 同账号VPC互连
  7. 测试连接成功后,进入迁移内容确认环节。单击下一步:预监测并启动同步迁移内容配置
    说明 源实例可迁移内容包含:集群、库、表、数据字典、物化视图、用户权限和集群配置迁移。
  8. 迁移任务配置完成后,后台进行迁移链路预监测和任务启动。
    • 校验成功,单击完成预检测成功
    • 校验失败,您需要按照提示信息进行操作,重新进行数据迁移。检测项目及要求如下。
      检测项目 检测要求
      实例状态检测 迁移发起时,源实例和目的实例不能有正在运行的管控任务(包含扩容,升降配等)。如果当前源实例和目的实例有管控任务正在运行,则不能发起迁移任务。
      副本一致性检测 保持源实例和目的实例的副本一致。副本不一致,会导致参数缺失,无法进行副本的配置。
      存储空间检测 迁移同步进行前,进行存储空间校验。保证目的实例的存储空间大于等于源实例的存储空间。
      本地表和分布式表检测 如果存在本地表没有创建分布式表或者分布式表不唯一,则校验失败。请删除多余的分布式表。
  9. 迁移任务完成后您可以在实例迁移页面查看迁移任务。迁移任务管理

相关文档

如何从自建的ClickHouse将数据迁移到云数据库ClickHouse上,请参见从自建ClickHouse迁移上云