缩容后,缩容前做的备份还能恢复吗?做恢复的环境一定要和原集群环境一样吗?

【 TiDB 使用环境】测试
【 TiDB 版本】6.5.0 linux
【复现路径】缩容tikv节点,恢复缩容前的完全备份,恢复报错connection error
【遇到的问题:问题现象及影响】
<---------------------------…> 33.80%Full Restore <--------------------------.…> 33.80%Full Restore <--------------------------|…> 33.80%Full Restore <-----------------------------------------------------------------------------> 100.00%[2024/04/24 14:59:39.179 +08:00] [INFO] [collector.go:69] [“Full Restore failed summary”] [total-ranges=0] [ranges-succeed=0] [ranges-failed=0] [split-region=1.56078ms] [restore-ranges=73]
Error: connection error: desc = “transport: error while dialing: dial tcp 10.10.21.103:20161: connect: connection refused”
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】


缩容后集群信息
用tiup cluster scale-in tidb-test --node 10.10.21.103:20161命令做的缩容,缩容成功后节点一直是Pending Offline状态,

后来用 --force命令才将节点彻底去掉

只有3个tikv,缩不动吧。
备份恢复我认为没什么问题。

恢复的是数据,这个没有关系

意思是跟节点结构没关系吗

就是说,集群节点数量不一致理论是可以恢复?

恢复是没有问题的,但是如果你默认的是3副本的话,最好tikv保证3台以上服务器。

tikv节点数不能少于副本数(默认3个),不然缩容会失败
另外你上面贴的备份日志显示备份失败了。
建议你先扩容一个kv节点恢复集群。

最少要三副本,先保持集群正常吧

确实是这样,我试了一下四节点的备份,恢复到三节点,恢复成功了,谢谢大家了

备份恢复不需要和原来节点数一样,region随时都在变的。

确实是这样,感谢

弱弱的问一下,你所说的副本指的是什么?是某个组件吗?

备份只是备份多个副本的 leader,和节点数量无关

额,这个副本指的是啥,pd吗

问一下哈,这个副本指的是啥,是pd吗

tidb默认数据存3份,存不同tikv里面,其中一个leader 2个follower

好的,谢谢

机器数需要大于副本数,恢复数据时不需要与原集群一样

TiDB 集群默认配置为 3 副本,每一个 Region 都会在集群中保存 3 份,它们之间通过 Raft 协议来选举 Leader 并同步数据。Raft 协议可以保证在数量小于副本数(注意:不是节点数)一半的节点挂掉或者隔离的情况下,仍然能够提供服务,并且不丢失任何数据。