TiDB备份问题

大哥们我想问一下TiDB的备份方案有几种?
br工具和使用sql命令进行备份的区别在哪里?
TiCDC这个备份是什么意思呢?

br 是物理备份,sql是逻辑备份。
数据量大的话推荐用br,如果要导入的目标端不是tidb,那只能sql了

可是我使用br备份出来的文件和
这个sql命令备份出来的文件是一样的呀。BACKUP DATABASE * TO ‘local:///mnt/backup/full/’;
这是SQL备份出来的文件:


这是使用br工具备份出来的文件:

你例子里使用的br命令和 sql 里面backup 底层调用的都是br,逻辑上是一样的,只不过入口不一样而已

2 个赞

br是逻辑备份?除了br这个方案还有哪些方案呢?

官方目前就两种:br 算“物理备份”,dumpling 是逻辑备份。br 可以在命令行调用 “br 可执行程序”,也可以在数据库内使用 sql,本质都是用“br”。 传统的 mysqldump、mydumper、mysqlpump 勉强可以用,不过官方强烈不推荐

1 个赞

你用sql调用的br,这个东西没法去mysql中恢复,这就是物理备份。
逻辑备份的意思是能去mysql中恢复的sql文件,用mysql dump、dumpling 这种是逻辑备份。
https://docs.pingcap.com/zh/tidb/v7.1/dumpling-overview?_gl=1*1rpixyl*_ga*MTk2MDU0ODY1MC4xNjkyMTQ5MzA5*_ga_3JVXJ41175*MTcwNjA3NzM4NS42Mi4xLjE3MDYwODAxNTQuNTQuMC4w#使用-dumpling-导出数据

https://docs.pingcap.com/zh/tidb/v7.1/use-br-command-line-tool#br-命令行手册

1 个赞

哦哦这样阿谢谢!!

br 物理备份恢复速度快,只能同版本,dumpling 逻辑备份,产生sql文件,可以迁移到其他非tidb环境,或者其他不同版本的tidb

BACKUP语句使用的引擎与 BR 相同,但备份过程是由 TiDB 本身驱动,而非单独的 BR 工具。BR 工具的优势和警告也适用于 BACKUP 语句。

刚刚看文档还有个TiCDC的备份哦

好像还有一个TiCDC备份哦

ticdc是搞增量的,把tidb的变更转成sql,在下游的 mysql中执行,或者下游换成kafka都可以。

br是指物理备份,sql命令你应该指的是dumpling或 mysqldump这种工具,物理备份相对来说速度会更快一些,但是有局限性,比如br是tidb的物理备份恢复工具,xtrbackup是mysql的物理备份恢复工具;
除此之外,你提到了ticdc,它的下游可以承接 MySQL、Kafka等,主要是用来做数据同步使用的
image

备份方法分为物理备份和逻辑备份,按照类型分为全量备份与增量备份。BR是物理备份,dumpling是逻辑备份,一个性能好,一个性能差,一个不灵活,一个灵活,等等,好好看看301和303的培训视频就知道了

好的谢谢

TiCDC 的产品定位是一个增量同步工具

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。