gpt4 book ai didi

linux - PostgreSQL 错误 : could not open file "base/.../..."

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:16:21 27 4
gpt4 key购买 nike

有很多queue_promotion_n表,其中n是从1到100。一个相当简单的查询在 73 表上有一个错误

SELECT count(DISTINCT queue_id)
FROM "queue_promotion_73"
WHERE status_new > NOW() - interval '3 days';

ERROR: could not open file "base/16387/357386324.1" (target block 200005): No such file or directory

DB 正常运行时间 23 天。如何解决?

最佳答案

  1. 检查您是否拥有最新的备份(或验证您的数据库副本是否同步)
  2. PostgreSQL wiki建议停止 DB 并将所有 PostgreSQL 文件rsync 全部转移到安全位置。

物理存储表的文件似乎丢失了。您可以使用以下方法检查 PostgreSQL 在磁盘上存储数据的位置:

SELECT pg_relation_filepath('queue_promotion_73');
pg_relation_filepath
----------------------
base/16387/357386324
(1 row)

如果您确定您的硬盘驱动器/RAID Controller 工作正常,您可以尝试重建表。最好先在数据库的副本或备份快照上尝试此操作。

VACUUM FULL queue_promotion_73;

再次检查关系路径:

SELECT pg_relation_filepath('queue_promotion_73');

它应该是不同的,并且希望包含所有必需的文件。

原因可能与硬件问题有关,确保检查数据库一致性。

关于linux - PostgreSQL 错误 : could not open file "base/.../...",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51175386/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com