【赵渝强老师】高斯数据库(openGauss)的数据文件

b472

在高斯数据库(openGauss)集群初始化的时候会创建一个目录,通常都会使用系统配置相关的环境变量$PGDATA来表示。当数据库初始化完成后,会在这个目录生成相关的子目录以及一些文件。下图就是openGauss数据库的物理结构:
image

下面重点讨论一下openGauss的数据文件,视频讲解如下:

image.png
点击这里查看视频讲解:【赵渝强老师】高斯数据库(openGauss)的数据文件

顾名思义,数据文件用于存储数据,文件名以oid命名。对于超出1G的数据文件,openGauss会自动将其拆分为多个文件来存储,而拆分的文件名将由pg_class中的relfilenode字段来决定。通过下面的步骤可以确定表所对应的数据文件。
(1)查看数据库的oid。

openGauss=# select oid,datname from pg_database;
# 输出的信息如下:  
  oid  |  datname  
-------+-----------
     1 | template1
 16384 | school
 16420 | finance
 14809 | template0
 16470 | scott
 14814 | postgres
(6 rows)

(2)查询前面创建的testtable1表的OID。

openGauss=# select oid,relname,relkind,relfilenode from pg_class
            where relname ='testtable1';

# 输出的信息如下:  
  oid  |  relname   | relkind | relfilenode 
-------+------------+---------+-------------
 16517 | testtable1 | r       |       16517
(1 row)

16517是表testtable1的OID。

(3)查看表空间mydemotbs对应的目录,如下图所示。
image

文件16517就是表testtable1对应的数据文件

posted @ 2026-10-01 19:04  赵渝强老师  阅读(5)  评论(0)    收藏  举报