【赵渝强老师】金仓数据库的数据文件

在金仓数据库中,数据库实例初始化的时候会创建一个目录,通常都会在系统配置相关的环境变量$KINGBASEDATA来表示。当数据库初始化完成后,会在这个目录生成相关的子目录以及一些文件。下图就是金仓数据库的物理结构:

数据文件用于存储数据,文件名以oid命名。对于超出1G的数据文件,金仓数据库会自动将其拆分为多个文件来存储,而拆分的文件名将由sys_class中的relfilenode字段来决定。

点击这里查看视频讲解:【赵渝强老师】金仓数据库的数据文件

通过下面的步骤可以确定表所对应的数据文件。

(1)查看数据库的OID。

sql 复制代码
kingbase=# select oid,datname from sys_database;

# 输出的信息如下:  
  oid  |  datname  
-------+-----------
 14791 | test
 14792 | kingbase
     1 | template1
 14790 | template0
 14793 | security
 16384 | scott
(6 行记录)

# 14792 是数据库kingbase的OID。

(2)查询testtable1表的OID。

sql 复制代码
kingbase=# select oid,relname,relkind,relfilenode from sys_class 
           where relname ='testtable1';

# 输出的信息如下:  
  oid  |  relname   | relkind | relfilenode 
-------+------------+---------+-------------
 16428 | testtable1 | r       |       16428
(1 行记录)

# 16428 是表testtable1的OID。

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

相关推荐
程序员夏洛11 分钟前
Redis 的持久化机制有哪些?
java·数据库·redis
l1t12 分钟前
DeepSeek总结的修复pgrust v0.2 #83:generate_series 聚合及其底层的两个成本 - #84
数据库·postgresql
厦门德仔1 小时前
【YiFeiWebApi】易飞ERP与WMS系统接口对接实战:从0到1全流程指南
大数据·数据库
内存漫游1 小时前
Page 到底是什么:数据库如何把一条条记录放进磁盘
数据库
小镇敲码人1 小时前
【深入浅出】之Qt 事件系统实战:鼠标、键盘、滚轮、窗口与定时器事件
数据库·qt·网络协议·mysql·http
Sirens.1 小时前
MySQL数据库:索引
数据库·mysql
treacle田2 小时前
达梦数据库-Linux DM主备集群动态增加节点-记录总结
linux·运维·数据库·达梦主备集群动态扩展
一只专注api接口开发的技术猿2 小时前
Open Claw 实战|快速搭建电商商品监控与数据分析能力
大数据·数据库·数据挖掘·数据分析
杨云龙UP2 小时前
Oracle 19c RMAN历史备份清理失败:CONTROL_FILE_RECORD_KEEP_TIME 问题排查与整改实战
linux·运维·网络·数据库·oracle·rac
2601_962073972 小时前
【MySQL】全面学习数据库查询技巧:查询指令深度学习指南
数据库·学习·mysql