PG之oid2name命令

0    511    3

Tags:

👉 本文共约2183个字,系统预计阅读时间或需9分钟。

oid2name — 解析一个PostgreSQL数据目录中的 OID 和文件结点。

大纲

oid2name [option...]

描述

oid2name是一个帮助管理员检查被 PostgreSQL 使用的文件结构的工具程序。要使用它,你需要熟悉数据库文件结构(见第 68 章)。

注意

名称“oid2name”是有历史原因的,它确实有些误导性,因为在你使用它的大部分时间里,你实际关心的是表的文件结点编号(在数据目录中是可见的文件名)。请确定你理解表 OID 和表文件结点之间的区别!

oid2name连接到一个目标数据库并且抽取 OID、文件节点或者表名信息。你也可以让它显示数据库 OID 或表空间 OID。

安装

选项

oid2name接受下列命令行参数:

  • -f *filenode* --filenode=*filenode*

    显示具有文件结点的表的信息filenode.

  • -i --indexes

    在列表中包括索引和序列.

  • -o *oid* --oid=*oid*

    显示具有OID的表的信息 oid.

  • -q --quiet

    忽略头部(用于脚本).

  • -s --tablespaces

    显示表空间 OIDs.

  • -S --system-objects

    包括系统对象(位于 information_schema, pg_toastpg_catalog 模式).

  • -t *tablename_pattern* --table=*tablename_pattern*

    显示匹配的表的信息 tablename_pattern.

  • -V --version

    打印oid2name版本并退出。

  • -x --extended

    显示关于每个对象所展现的更多信息: 表空间名, 模式名,以及 OID。

  • -? --help

    显示有关oid2name命令行参数的帮助并退出。

oid2name也接受下列用于连接参数的命令行参数:

  • -d *database* --dbname=*database*

    要连接的数据库。

  • -h *host* --host=*host*

    数据库服务器的主机。

  • -H *host*

    数据库服务器的主机。这个参数在 PostgreSQL 12中已经不推荐\

  • -p *port* --port=*port*

    数据库服务器的端口。

    本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!
  • -U *username* --username=*username*

    用于连接的用户名。

要显示特定表,通过使用-o-f-t选择要显示哪个表。 -o采用一个 OID, -f采用一个文件节点, 而-t采用一个表名(实际上,它是一个LIKE模式,因此你可以用诸如foo%之类的东西)。 这些选项你想用多少就用多少,最后的列举将包括所有匹配任意一个这些选项的对象。但是注意这些选项只能显示由-d给定的数据库中的对象。

如果你没有给出任何-o-f或者-t,但是给出了-d,它将列出由-d指定的数据库中的所有表。在这种模式下,-S-i选项控制什么会被列出。

如果你也没有给出-d,它将显示一个数据库 OID 的列表。你也可以给出-s来得到一个表空间列表。

环境

  • PGHOST PGPORT PGUSER

    默认连接参数。

与大多数其他 PostgreSQL的实用程序一样,这个实用程序也使用libpq 支持的环境变量 (参见 第 33.14 节)。

环境变量PG_COLOR指定是否在诊断消息中使用颜色。 可能的值是alwaysautonever

注解

oid2name要求一个运行着的数据库服务器并且其系统目录没有损坏。因此它对于数据库损坏的情况用处有限。

例子

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部