0

我想在 pg_class 中创建一个用于对象创建转储的列,但我无法添加。我正在使用以下查询: ALTER TABLE pg_catalog.pg_class ADD COLUMN relcreated TIMESTAMP;

当我运行此查询时,出现以下错误:错误:权限被拒绝:“pg_class”是系统目录 SQL 状态:42501 请建议任何对象创建时间转储的方法。这对于我的审计目的来说非常重要。

4

2 回答 2

1

那是一个系统表。你不能只是摆弄他们。

不过,您可能会发现事件触发器很有用。

于 2021-05-21T12:23:49.653 回答
0

设置log_statement = 'ddl'并从日志文件中获取信息。

您不能更改这样的目录,因为这需要对 PostgreSQL 代码进行重大更改,并且在每次升级期间您都会丢失信息。

于 2021-05-21T13:05:41.040 回答