是否可以使用其数据备份和恢复物化视图?

Oph*_*tan 12 postgresql materialized-view pg-dump

我有一些难以计算的物化视图,我希望能够使用实际存储的数据进行备份和恢复,而不是通过重新计算。

在 PostgreSQL 9.4 中可能吗?

(另一种方法是创建实际表,但它们更难“刷新”)

Sim*_*stö 9

并不真地。你必须记住 pg_dump 命令创建了简单的 CREATE TABLE 和 INSERT 语句等。所以当运行 pg_restore 时你只是在服务器上运行 CREATE 和 INSERT 语句并且插入数据将需要一个“INSERT INTO MATERIALIZED VIEW”命令。这是没有意义的,因为通过快捷方式获取数据也会危及视图的“完整性” - 您可以在手动恢复过程中插入无效数据,否则视图不会返回。所以我怀疑 PostgreSQL 是否会支持将物化视图数据直接手动恢复到数据库中。

如果您需要备份实际数据,我建议您使用表而不是物化视图,并对表运行预定的 DELETE FROM/INSERT INTO 语句。