档案目录中的每一列是什么意思? (pg_dump / pg_restore)

时间:2019-10-15 20:45:03

标签: postgresql

我正在使用pg_restore重建我备份的数据库。正如pg_restore文档(https://www.postgresql.org/docs/curren/app-pgrestore.html)中所建议的那样,我已经创建了一个带有档案目录的.list文件。

本质上没有错,但是我正在努力弄清楚此ToC中每一列的含义。它们每个看起来都像这样:

5602; 0 16476 TABLE DATA public <table_name> postgres

第一列是该表的存档ID,但是接下来的两个数字是什么意思?在我的ToC中,第一个非归档列始终为零,但在其他示例中则不然。

1 个答案:

答案 0 :(得分:1)

这些字段涉及:

  • 存档ID
  • 目录表OID(在您的情况下为0,因为该行属于TABLE DATA而不是表。此处proc将获得SELECT oid FROM pg_class were relname = 'pg_proc'的值,表将获得SELECT oid FROM pg_class where relname = 'pg_class'等)
  • 表OID(16476是您在pg_class中发现的oid)
  • 说明(在您的示例中为TABLE DATA
  • 模式(在您的示例中为public
  • 姓名(<table_name>
  • 所有者(在您的示例中为postgres