更新时间:2024-11-01 GMT+08:00
分享

PG_OBJECT

PG_OBJECT系统表存储限定类型对象(普通表,索引,序列,视图,存储过程和函数)的创建用户、创建时间和最后修改时间。

表1 PG_OBJECT字段

名称

类型

描述

object_oid

oid

对象标识符。

object_type

"char"

对象类型:

  • r :表示普通表。
  • i :表示索引。
  • s :表示序列。
  • v :表示视图。
  • p :表示存储过程和函数。

creator

oid

创建用户的标识符。

ctime

timestamp with time zone

对象的创建时间。

mtime

timestamp with time zone

对象的最后修改时间,修改行为包括ALTER操作和GRANT、REVOKE操作。

createcsn

bigint

对象创建时的CSN。

changecsn

bigint

对表或索引执行DDL操作时的CSN。

  • 无法记录初始化数据库(initdb)过程中所创建或修改的对象,即PG_OBJECT无法查询到该对象记录。
  • 对于升级至该版本的数据库,无法记录升级以前所创建的对象,即PG_OBJECT无法查询到该对象记录。
  • 对于上述两类对象再次修改时,会记录其修改时间(mtime),由于无法得知该对象创建时间,因此ctime为空。
  • 对于升级前创建的对象,再次修改时会记录其修改时间(mtime),对表或索引执行DDL操作时会记录其所属事务的事务提交序列号(changecsn)。由于无法得知该对象创建时间,因此ctime和createcsn为空。
  • ctime和mtime所记录的时间为用户当次操作所属事务的起始时间。
  • 由扩容引起的对象修改时间也会被记录。
  • createcsn和changecsn记录的是用户当次操作所属事务的事务提交序列号。

相关文档