0

我已经wal_keep_segments设置为3000. 但是目录pg_xlog包含超过 6000 个 WAL 段。有趣的是,在 8 月 14 日之后有大约 3000 个文件,所以我猜 8 月 14 日之前的文件不应该存在。这些文件也有一个可执行位集。

$ ls -al pg_xlog | grep -A2 -B2 00000001000034DB0000003B
-rwx------  1 postgres postgres 16777216 Jul 19 07:58 00000001000034DB00000039
-rwx------  1 postgres postgres 16777216 Jul 19 07:58 00000001000034DB0000003A
-rwx------  1 postgres postgres 16777216 Jul 19 07:58 00000001000034DB0000003B
-rw-------  1 postgres postgres 16777216 Aug 14 19:17 0000000100003826000000EA
-rw-------  1 postgres postgres 16777216 Aug 14 19:17 0000000100003826000000EB

```

此集群没有复制槽,archive_mode已启用但archive_command设置为/bin/true. 我认为新的 WAL 段已被回收,总量约为 6000,但 postgres 出于某种原因不会删除旧文件。有任何想法吗?

4

1 回答 1

0

PostgreSQL 没有在 WAL 段上设置可执行标志的习惯。

此外,编号似乎有差距。

这些文件一定是偶然出现的,你可以删除它们。

于 2018-08-15T04:34:34.563 回答