400-090-9964


博客 | 论坛

教学文章

达梦数据库DM8 DBA管理员手册:DM逻辑存储结构-表空间

时间:2020-11-26 来源:

达梦数据库DM8 DBA管理员手册:DM逻辑存储结构-表空间

在 DM数据库中,表空间由一个或者多个数据文件组成。DM数据库中的所有对象在逻辑上都存放在表空间中,而物理上都存储在所属表空间的数据文件中。

在创建 DM 数据库时,会自动创建 5 个表空间:SYSTEM 表空间、ROLL 表空间、MAIN表空间、TEMP表空间和 HMAIN表空间。

1. SYSTEM表空间存放了有关 DM数据库的字典信息,用户不能在 SYSTEM表空间创建表和索引。

2. ROLL表空间完全由 DM数据库自动维护,用户无需干预。该表空间用来存放事务运行过程中执行 DML操作之前的值,从而为访问该表的其他用户提供表数据的读一致性视图。

3. MAIN表空间在初始化库的时候,就会自动创建一个大小为 128M的数据文件MAIN.DBF。在创建用户时,如果没有指定默认表空间,则系统自动指定 MAIN表空间为用户默认的表空间。

4. TEMP表空间完全由 DM数据库自动维护。当用户的 SQL语句需要磁盘空间来完成某个操作时,DM数据库会从 TEMP表空间分配临时段。如创建索引、无法在内存中完成的排序操作、SQL语句中间结果集以及用户创建的临时表等都会使用到 TEMP表空间。

5. HMAIN表空间属于 HTS表空间,完全由 DM数据库自动维护,用户无需干涉。当用户在创建 HUGE表时,未指定 HTS表空间的情况下,充当默认 HTS表空间。

每一个用户都有一个默认的表空间。对于 SYS、SYSSSO、SYSAUDITOR 系统用户,默认的用户表空间是 SYSTEM,SYSDBA的默认表空间为 MAIN,新创建的用户如果没有指定默认表空间,则系统自动指定 MAIN 表空间为用户默认的表空间。如果用户在创建表的时候,指定了存储表空间 A,并且和当前用户的默认表空间 B 不一致时,表存储在用户指定的表空间 A中,并且默认情况下,在这张表上面建立的索引也将存储在 A中,但是用户的默认表空间是不变的,仍为 B。

一般情况下,建议用户自己创建一个表空间来存放业务数据,或者将数据存放在默认的用户表空间 MAIN中。

用户可以通过执行如下语句来查看表空间相关信息。

SYSTEM、ROLL、MAIN和 TEMP表空间查看语句:

SELECT * FROM V$TABLESPACE;

HMAIN表空间查看语句:

SELECT * FROM V$HUGE_TABLESPACE;

结果集中各字段的含义请参考附录部分动态性能视图章节中对V$TABLESPACE的介绍。

版权所有@北京神脑资讯技术有限公司(CUUG,中国UNIX用户协会) Copyright 2017 ALL Rights Reserved 京ICP备11008061号 京公网110108006275号

CUUG旗下网站:www.cuug.com.cn www.cuug.com oracle.cuug.com bbs.cuug.com bd.cuug.com

电话:010-59426307 010-59426319 邮政编码:100089

海淀校区:北京市海淀区紫竹院路88号紫竹花园4号楼D座703(CUUG)