如何解决连接到InfluxDB的错误EOF?

How to solve error EOF connecting to InfluxDB?

提问人:Capensis 提问时间:12/20/2022 最后编辑:Capensis 更新时间:12/21/2022 访问量:486

问:

我通过 docker 使用 InfluxDB 1.8 和 Grafana 几个月了,直到今天没有任何问题。突然我无法访问 InfluxDB。我得到的错误是:

Failed to connect to http://localhost:8086: Get http://localhost:8086/ping: EOF
Please check your connection settings and ensure 'influxd' is running.

Docker 正在运行,已检查。我所做的一些测试是重新启动 docker,更改端口,在没有 docker 的情况下运行 InfluxDB,最后在没有数据库的情况下尝试(全部为空)。

它仅在我删除数据库时才有效,但随后我丢失了所有内容。我以为也许某个文件已损坏,但我不知道是哪一个。知道如何修复此错误吗?

提前致谢

编辑:好吧,我终于删除了损坏的文件,但EOF错误仍然存在。但是,现在如果我运行验证工具,则没有损坏的块。也许是因为它不能直接删除,并且在某处引用了它的内容?

Docker EOF

评论

0赞 Capensis 5/4/2023
我把这个写下来,以防它对其他人有所帮助。我让 InfluxDB 在 HDD 上运行了几个月,从它第一次失败开始,即使有一个空的数据库,它也会失败,所以我无法弄清楚问题出在哪里。当我在 SSD 上运行 InfluxDB 时,它已修复,此后再也没有发生过。

答:

7赞 Munin 12/20/2022 #1

如果您怀疑文件可能已损坏,可以使用以下工具来验证 TSM 文件的完整性:

influx_inspect verify -dir <storage_root>

在此处查看更多详细信息。

评论

0赞 Capensis 12/20/2022
是的,所有文件都运行正常,除了一个指示:\InfluxDB\data_internal\monitor\976\000000030-000000001.tsm:由于错误:“tsm 文件已关闭”,无法获取密钥 [] 块 988 的校验和 现在是时候找出它是什么以及如何修复它了