TIDB - 使用TiDB Lightning 迁移Mysql数据至TIDB中

Posted 小毕超

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TIDB - 使用TiDB Lightning 迁移Mysql数据至TIDB中相关的知识,希望对你有一定的参考价值。

一、TiDB Lightning介绍

TiDB Lightning 是一个将全量数据高速导入到 TiDB 集群的工具,目前支持 Mydumper 或 CSV 输出格式的数据源。你可以在以下两种场景下使用 Lightning:
迅速导入大量新数据。
备份恢复所有数据。
TiDB Lightning 主要包含两个部分:

  1. tidb-lightning(“前端”):主要完成适配工作,通过读取数据源,在下游 TiDB 集群建表、将数据转换成键/值对 (KV 对) 发送到 tikv-importer、检查数据完整性等。
  2. tikv-importer(“后端”):主要完成将数据导入 TiKV 集群的工作,把 tidb-lightning 写入的 KV 对缓存、排序、切分并导入到 TiKV 集群。

二、导入的流程

三、开始迁移

  1. 下载 idb-enterprise-tools 工具
wget https://download.pingcap.org/tidb-enterprise-tools-latest-linux-amd64.tar.gz
  1. 下载tidb-toolkit
wget https://download.pingcap.org/tidb-toolkit-latest-linux-amd64.tar.gz
  1. mysql 中的数据导出
./mydumper -h 127.0.0.1 -P 3306 -u root -p Root@1234 -t 16 -F 256 -B mytest -T t1,t2 --skip-tz-utc -o /data/my_database/
  1. 编写 tikv-importer.toml 文件
# TiKV Importer 配置文件模版

# 日志文件。
log-file = "tikv-importer.log"
# 日志等级:trace、debug、info、warn、error、off。
log-level = "info"

[server]
# tikv-importer 监听的地址,tidb-lightning 需要连到这个地址进行数据写入。
addr = "127.0.01:8287"

[import]
# 存储引擎文档 (engine file) 的文件夹路径。
import-dir = "/mnt/ssd/data.import/"
  1. 启动 tikv-importer
nohup ./tikv-importer -C tikv-importer.toml > nohup.out &
  1. 启动tidb-lightning
nohup ./tidb-lightning \\
            --importer 127.0.0.1:8287 \\
            -d /data/my_database/ \\
            --pd-urls 0.0.0.0:2379 \\
            --tidb-host 192.168.1.101 \\
            --tidb-user root \\
            --log-file tidb-lightning.log \\
        > nohup.out &

未完待补充完整。

以上是关于TIDB - 使用TiDB Lightning 迁移Mysql数据至TIDB中的主要内容,如果未能解决你的问题,请参考以下文章

通过TiDB Operator升级TiDB集群

猿创征文 | 国产数据库实战之使用Docker部署TiDB集群

猿创征文 | 国产数据库实战之使用Docker部署TiDB集群

TiDB集群安装TiDB Dashboard

带着问题读 TiDB 源码:Hive 元数据使用 TiDB 启动报错

TIDB - TIDB集群的扩容和缩容及TIUP指令说明