由于之前安装的环境未更改默认数据路径,在断电后出现悲剧的情况,数据文件损坏。
启动报错:
java.io.IOException: No snapshot found, but there are log entries. Something is broken!
at org.apache.zookeeper.server.persistence.FileTxnSnapLog.restore(FileTxnSnapLog.java:222)
经过文件备份之后,重新设置了目录,全新重启才成功,但是数据也丢失。
为了检查哪些数据还能拯救,查询了资料。官方提供了相关的查看方式。
查看日志文件的命令:
java -cp lib/zookeeper-3.5.5.jar:lib/log4j-1.2.17.jar:lib/slf4j-log4j12-1.7.25.jar:lib/slf4j-api-1.7.25.jar:lib/zookeeper-jute-3.5.5.jar org.apache.zookeeper.server.LogFormatter tmp2/version-2/log.ea3d43b
f
查看快照文件的命令:
java -cp lib/zookeeper-3.5.5.jar:lib/log4j-1.2.17.jar:lib/slf4j-log4j12-1.7.25.jar:lib/slf4j-api-1.7.25.jar:lib/zookeeper-jute-3.5.5.jar org.apache.zookeeper.server.SnapshotFormatter tmp2/version-2/snapshot.b0000002f