- TiKV的使用模式是裸KV集群的方式
- TiKV节点中有大量的RocksDB文件损坏
- 是否有办法将业务的裸的key从这些损坏的sst文件中恢复出来
大量的损坏,rocksdb 能不能打开都不一定。
是rawkv还是txnkv?如果是rawkv,没有事务的话,是不是读取到的数据就可以用?
tikv-ctl ldb scan --from XXXXXX --to XXXXXXXXXXX --db=tikv/db --column_family=‘write’ --hex
这是扫描writecf的数据。其中write换成default,lock都可以。
如果说db打不开了。dump sst试试,但是那样的数据几乎没法用,因为低level的数据可能会覆盖高level的数据,也就是说level6的sst中的key可能在leve0被删掉了。
./tikv-ctl ldb dump --path=xx.sst
只能这样试试了,如果对你来说随便捞一条就有点用,那可以试试
通过WAL是否可以恢复呢?