微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

postgresql – postgres数据库文件 – 哪个文件表示特定的表/索引?

当我进入sql-8.2 / base /以检查我的表占用了多少空间,有很多文件一个数字命名.我如何找到存储该表的特定表和索引的特定文件

例如,我按日期排序文件(最新的),但在特定时间段有几个:

-rw-------  1 postgres sql  1.0G Dec  4 13:41 15426233
-rw-------  1 postgres sql  149M Dec  4 13:41 15426233.4
-rw-------  1 postgres sql  1.0G Dec  4 13:41 15426233.3
drwx------  3 postgres sql   75K Dec  4 13:40 .
-rw-------  1 postgres sql  1.0G Dec  4 13:34 15426233.2
-rw-------  1 postgres sql  1.0G Dec  4 13:28 15426233.1
-rw-------  1 postgres sql  3.6M Dec  4 11:23 1249
-rw-------  1 postgres sql  584K Dec  4 11:23 2659
-rw-------  1 postgres sql  672K Dec  4 11:23 2663
-rw-------  1 postgres sql  136K Dec  4 11:23 2662
-rw-------  1 postgres sql  848K Dec  4 11:23 2608
-rw-------  1 postgres sql  2.6M Dec  4 11:23 2658
-rw-------  1 postgres sql  600K Dec  4 11:23 2674
-rw-------  1 postgres sql   56K Dec  4 11:23 2679
-rw-------  1 postgres sql  632K Dec  4 11:23 2673
-rw-------  1 postgres sql   72K Dec  4 11:23 2678
-rw-------  1 postgres sql  1.8M Dec  4 11:22 2619
-rw-------  1 postgres sql  112K Dec  4 11:21 2696
-rw-------  1 postgres sql 1007M Dec  4 11:21 15426228.5
-rw-------  1 postgres sql  1.0G Dec  4 11:19 15426228.4
-rw-------  1 postgres sql  1.0G Dec  4 11:19 15426228.3
-rw-------  1 postgres sql  1.0G Dec  4 11:18 15426228.2
-rw-------  1 postgres sql  1.0G Dec  4 11:17 15426228.1
-rw-------  1 postgres sql  1.0G Dec  4 11:16 15426228
每个目录表示数据库(通过创建数据库创建).数字是数据库的oid.要查看oid及其名称,请运行以下语句:
select oid,datname
from pg_database;

在每个目录中,每个文件对应于pg_class中的一个条目,其中oid与目录中文件的编号相匹配:

您可以通过运行语句来查看它们与它们之间的关系:

select cl.relfilenode,nsp.nspname as schema_name,cl.relname,cl.relkind
from pg_class cl
  join pg_namespace nsp on cl.relnamespace = nsp.oid;

您可能还想查看手册

> Determining Disk Usage
> Database File Layout
> System catalogs

Btw:如果你仍然运行8.2,你应该尽快升级.

原文地址:https://www.jb51.cc/postgresql/192600.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐