tidb数据库无法启动

版本5.4.0
数据库没有任何重启操作,直接down掉,并且无法启动



前两天也碰到这个问题,以为是服务器有问题,但是另外一个虚拟机环境也出问题了,大佬们求助

1 个赞

看看各组件的log吧,主要是pd

看看其他信息 日志

[2022/04/08 10:01:48.178 +08:00] [FATAL] [main.go:122] [“run server failed”] [error="[PD:leveldb:ErrLevelDBOpen]leveldb: manifest corrupted (field ‘comparer’): missing [file=MANIFEST-000009]"] [stack=“main.main\ \t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/pd/cmd/pd-server/main.go:122\ runtime.main\ \t/usr/local/go/src/runtime/proc.go:225”]

[2022/04/08 10:01:48.178 +08:00] [FATAL] [main.go:122] [“run server failed”] [error="[PD:leveldb:ErrLevelDBOpen]leveldb: manifest corrupted (field ‘comparer’): missing [file=MANIFEST-000009]"] [stack=“main.main\ \t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/pd/cmd/pd-server/main.go:122\ runtime.main\ \t/usr/local/go/src/runtime/proc.go:225”]
日志报这个错

看着是底层存储rocksdb(leveldb)损坏了
https://studygolang.com/articles/10716
找了下这个,不知道有没有更简单全局的解决办法,等待大神

https://docs.pingcap.com/zh/tidb/stable/pd-recover 记住现在的cluster id 然后按教程 recover

2 个赞

谢谢,已经修复了,但是为什么会这样,是文件损坏了吗

对一般断电才会 容易触发rocksdb manifest 损坏, 你这是强制重启了 还是断电了,如果都不是那还得看看为啥坏了

因服务器卡死无法连接,所以强制手动重启了服务器,结果就这样了

问题挺多的

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