tidb load data file 失败_TIDB运维之数据导入与导出

7f4bd8de127014ca6d8c589bd9624a2e.png

本文章仅针对4.0.0版本。

1. 介绍:

TIDB使用Dumpling工具进行数据导出, 使用Lightning工具进行数据恢复。

导出时直接使用Dumpling工具即可导出, 导入时需要先启动tikv-importer再使用tidb-lightning进行数据导入.

TiDB Lightning 运行后,TiDB 集群将无法正常对外提供服务

tidb-lightning崩溃,集群会留在“导入模式”。若忘记转回“普通模式”,集群会产生大量未压缩的文件,继而消耗 CPU 并导致延迟。此时,需要使用tidb-lightning-ctl手动将集群转回“普通模式”:

bin/tidb-lightning-ctl -switch-mode=normal

2. 数据导出-Dumpling

下载工具:https://download.pingcap.org/tidb-toolkit-{version}-linux-amd64.tar.gz
以4.0.0为例:
wget https://download.pingcap.org/tidb-toolkit-v4.0.0-linux-amd64.tar.gz
tar -xvf tidb-toolkit-v4.0.0-linux-amd64.tar.gz


/root/tidb-toolkit-v4.0.2-linux-amd64/bin/dumpling   
    -u root 
    -P 4000 
    -p xxxxxxxx 
    -h 127.0.0.1 
    --filetype sql 
    --threads 32 
    -o /tmp/test 
    --filter "test_mysql.*"

3. 数据恢复-tikv-importer 和 tidb-lightning

3.1 配置tikv-importer

vi tikv-importer.toml
# TiKV Importer 配置文件模版

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

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

[import]
# 存储引擎文档 (engine file) 的文件夹路径。
import-dir = "/mnt/ssd/data.import/"

nohup /root/tidb-toolkit-v4.0.2-linux-amd64/bin/tikv-importer -C tikv-importer.toml > nohup.out &

3.2 使用tidb-lighting导入

#!/bin/bash
nohup /root/tidb-toolkit-v4.0.2-linux-amd64/bin/tidb-lightning 
--importer xxx.xx.xxx.xx:xxxx 
-d /tmp/test/ 
--tidb-host xxx.xx.xxx.xx 
--tidb-user root 
--tidb-port 4000 
-tidb-status 10080 
--pd-urls xxx.xx.xxx.xx:2379 
--log-file tidb-lightning.log 
> nohup.out &

3.3 troubleshot

3.3.1 中途取消导入, 再次尝试

遇到错误: [error="rpc error: code = Canceled desc = context canceled"]

解决方法:

删除tikv-importer缓存文件,并重启tikv-importer.

1. 到import-dir手工删除
cd /mnt/ssd/data.import/
rm -rf ./.temp

2. 使用tidb-lightning-ctl删除
./tidb-lightning-ctl 
-tidb-host xxx.xx.xxx.xx 
-tidb-user root 
-tidb-port 4000 
-tidb-status 10080 
-pd-urls xxx.xx.xxx.xx:2379 
-log-file tidb-lightning_tool.log 
-importer xxx.xx.xxx.xx:8287

3.3.2 "TiDB Lightning has failed last time; please resolve these errors first"

failed: checksum mismatched remote vs local

rm -rf /tmp/tidb_lightning_checkpoint.pb
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值