6台TIKV故障2台后,region异常,tidb无法启动

【 TiDB 使用环境】生产环境
【 TiDB 版本】7.1.4
【复现路径】6台TIKV,故障2台后异常待修复
【遇到的问题:问题现象及影响】

生产环境中的6台TIKV,出现3台故障,其中一台故障的通过重启系统后得到恢复。但另2个节点TIKV无法正常启动
通过手工扩容增加了几台tikv节点,缩容去掉故障的2台TIKV节点,看起来TIKV状态均正常,但是tidb节点无法启动,

–force缩容的吧? pd-ctl store看看还能卡到缩容的2个tikv不? 估计得做多副本失败恢复

https://docs.pingcap.com/zh/tidb/stable/online-unsafe-recovery

3副本坏2台就起不来了,可能会丢数据,需要做恢复

要是测试环境就重建吧 :joy_cat:

tiup ctl:v8.2.0 pd region check down-peer -u 192.168.100.18:2379
Starting component ctl: /root/.tiup/components/ctl/v8.2.0/ctl pd region check down-peer -u 192.168.100.18:2379
{“count”:0,“regions”:}

是的。–force缩容的。
现在启动tidb的时候,日志提示之前故障的192.168.100.19 和 192.168.100.33这两个故障的TIKV

tiup ctl:v8.2.0 pd unsafe remove-failed-stores 192.168.100.19:20160,192.168.100.33:20160 -u 192.168.100.18:2379
Starting component ctl: /root/.tiup/components/ctl/v8.2.0/ctl pd unsafe remove-failed-stores 192.168.100.19:20160,192.168.100.33:20160 -u 192.168.100.18:2379
strconv.ParseUint: parsing “192.168.100.19:20160”: invalid syntax

3个副本,多数派,至少需要2个节点启动才正常。

store id不是地址

tiup ctl:v8.2.0 pd unsafe remove-failed-stores 171250870,171308453 -u 192.168.100.18:2379

前面做过一次 --auto-detect 。
现在操作的时候提示unsafe recovery is running。。。

[root@node231 ~]# tiup ctl:v8.2.0 pd unsafe remove-failed-stores 171250870,171308453 -u 192.168.100.18:2379
Starting component ctl: /root/.tiup/components/ctl/v8.2.0/ctl pd unsafe remove-failed-stores 171250870,171308453 -u 192.168.100.18:2379
Failed! [500] “[PD:unsaferecovery:ErrUnsafeRecoveryIsRunning]unsafe recovery is running”


应该是需要 region id: 133332255, 分布在三个 171250870,171308454,171308453
目前只有171308453这一个副本可用。
如何操作用这一个副本启动呢?

大概率丢失数据,有备份用备份吧
https://docs.pingcap.com/zh/tidb/stable/online-unsafe-recovery

专栏 - TiKV缩容下线异常处理的三板斧 | TiDB 社区

感谢大家 的关心和关注!!
问题已经解决。
https://docs.pingcap.com/zh/tidb/stable/online-unsafe-recovery
主要还是参考这个文档。
感谢各位!!!

2 个赞

跟着看了一遍文档,确实比之前的 unsafe-recovery 操作复杂度降低了很多,基本都TiDB内部消化了。