tidb数据迁移工具使用

BR 备份 恢复 Backup & Restore
1、先在各TIKV节点创建备份目录 mkdir /tmp/db_backup
给目录权限 chmod 777 db_backup
2、进入到 /home/tidb/tidb-toolkit-v5.0.1-linux-amd64/bin
备份 ./br backup full --pd “10.0.4.3:2379” --storage “local:///tmp/db_backup” --ratelimit 120 --log-file dbfull_back.log (数据库全备份)
./br backup db --pd “10.0.4.3:2379” --db tidb --storage “local:///tmp/db_backup” --ratelimit 120 --log-file tidb_back.log
3、将所有备份文件拷贝到其它各个tikv节点,保证在所有TIKV节点上都有所有的备份文件 scp * 10.0.4.6:/tmp/tidb_back
4、删除库后恢复

./br restore db --pd “10.0.4.3:2379” --db tidb --storage “local:///tmp/db_backup” --log-file tidb_restore.log

表备份 ./br backup table --pd “10.0.4.12:2379” --db tidb --table emp --storage “local:///tmp/tidb_back” --ratelimit 100 --log-file emp_back.log
表恢复 ./br restore table --pd “10.0.4.6:2379” --db tidb --table emp --storage “local:///tmp/tidb_back” --log-file restoreemplog
–ratelimit 选项限制了每个 TiKV 执行备份任务的速度上限(单位 MiB/s)。–log-file 选项指定把 BR 的 log 写到 backupfull.log 文件中。

dumpling (mydumper) 和 lightning (lightning 只能用于tidb)
cd /home/tidb/tidb-toolkit-v5.0.1-linux-amd64/bin
导出表 ./dumpling -uroot -proot -P4000 -h10.0.4.3 --filetype sql -t 8 -o /tmp/tidb_back -r 2000 -F 256Mib -T tidb.emp
metadata为导出的时间戳信息
导出库 ./dumpling -uroot -proot -P4000 -h10.0.4.3 --filetype sql -t 8 -o /tmp/tidb_bak2 -r 2000 F 256Mib -B tidb
mydumper使用
./mydumper -h 10.0.4.3 -P 4000 -u root -p root -t 32 -F 256 -B tidb -T dmp,emp --skip-tz-utc -o /tmp/tidb_back
注意:1、mydumper 后面的参数和值之间需有空格,dumpling 无限制
2、mydumper导出的数据插入为 tidb.dmp.sql ,dumpling的为 tidb.dmp.0000000010000.sql
3、导出目录不需要为空,但是为了避免数据有问题,最好目标目录为空

***1、配置导入 tidb-lightning.toml

[lightning]
#log
level=“info”
file=“tidb-lightning.log”

[tikv-importer]
#选择使用local后端
backend=“local”
#设置排序的键值对的临时存放地址
sorted-kv-dir="/tmp/sort_lightning"
[mydumper]
#源数据目录
data-source-dir="/tmp/tidb_bak2/"
filter=[“tidb.emp”] #只导入tidb.emp表

[tidb]
#目标集群的信息
host=“10.0.4.12”
port=4000
user=“root”
password=“root”
#表架构信息在从tidb的状态端口获取 status-port= 10080
status-port = 10080
pd-addr=“10.0.4.12:2379”

2、导入 nohup ./tidb-lightning -config tidb-lightning.toml > onhup.out &
可以从 less onhup.out 中监控 tidb-lightning 是否退出
从 tidb-lightning.log 中 查看详细内容

如果发生中断,人为停止(数据量比较大,只导入了一部分数据,需要先停止对表analyze进行查询)
断点续传:原来的 配置文件中是启动断点续传的,[checkpoint] enable = true
重新lightning:清空表,修改 断点的存放位置下记录的断点相关文件名,配置文件中有指定 driver = “file”,如果不设置该参数则默认为 /tmp/CHECKPOINT_SCHEMA.pb

若 tidb-lightning 因不可恢复的错误而退出(例如数据出错),重启时不会使用断点,而是直接报错离开。为保证已导入的数据安全,这些错误必须先解决掉才能继续。使用 tidb-lightning-ctl 工具可以标示已经恢复,详情见官方文档 https://docs.pingcap.com/zh/tidb/v3.0/tidb-lightning-checkpoints/

重新启动 同 启动的 命令一样

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值