问题描述
我想在 pg_class 中创建一列用于对象创建转储,但我无法添加。 我正在使用以下查询: ALTER TABLE pg_catalog.pg_class ADD COLUMN 重新创建时间戳;
当我运行此查询时,出现以下错误: 错误:权限被拒绝:“pg_class”是系统目录 sql 状态:42501 请为对象创建时间转储提出任何建议。这对我进行审计非常重要。
解决方法
那是一个系统表。你不能只是摆弄它们。
您可能会发现 event triggers 很有用。
,设置 log_statement = 'ddl'
并从日志文件中获取信息。
您不能更改“这样的目录”,因为它需要对 PostgreSQL 代码进行重大更改,并且在每次升级期间都会丢失信息。