在 PostgreSQL 上重新启用 table 日志记录

Re-enabling table logging on PostgreSQL

我们最近有一个 PostgreSQL 数据库,其中一些表关闭了 WAL。

ALTER TABLE some_table SET UNLOGGED;

如果我再次启用日志记录。

ALTER TABLE some_table SET LOGGED;

这是否使日志记录一直处于打开状态,或者我是否只会从重新打开它的那一刻开始进行日志记录?

整个 table(截至日志记录重新打开时)被复制到 WAL 流中。就好像 table 在那个时期消失了,然后被创建了新的并自动加载了它现有的内容。您将无法执行 PITR(时间点恢复)来查看未记录的 table 的内容。