达梦表空间介绍 & 用户默认表空间

文章描述了如何在disqlV8环境中通过SQL命令创建新用户TEST_USER,并查看系统表空间V$TABLESPACE和dba_users的信息,包括默认表空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

达梦数据库创建用户及相关操作详解

在达梦数据库中,创建用户是数据库管理的基础操作之一,它涉及到用户身份的定义、权限的分配以及相关系统信息的查询。以下将详细介绍创建用户的过程,并结合提供的代码和图片进行全面解读。

一、创建用户步骤

  1. 登录数据库:使用disql工具登录到达梦数据库V8版本。disql是达梦数据库提供的命令行交互工具,用于执行SQL语句和管理数据库。
disql V8
  1. 执行创建用户语句:登录成功后,在SQL命令行中执行创建用户的语句。
CREATE USER TEST_USER IDENTIFIED BY TEST_PASSWORD;

这条语句创建了一个名为TEST_USER的用户,并设置其密码为TEST_PASSWORD。执行结果显示:

操作已执行
已用时间: 5.135(毫秒). 执行号:8896200.

表明用户创建操作成功完成,且记录了操作执行所花费的时间和执行号。
在这里插入图片描述

二、查看相关系统信息

  1. 查看表空间信息:创建用户后,通常需要了解数据库的表空间情况,因为用户的数据会存储在表空间中。使用以下SQL语句查询表空间信息:
SELECT * FROM V$TABLESPACE;

执行结果如下:

行号     ID          NAME   CACHE TYPE$       STATUS$     MAX_SIZE             TOTAL_SIZE           FILE_NUM    ENCRYPT_NAME ENCRYPTED_KEY COPY_NUM    SIZE_MODE OPT_NODE    USED_SIZE           
---------- ----------- ------ ----- ----------- ----------- -------------------- -------------------- ----------- ------------ ------------- ----------- --------- ----------- --------------------
1          0           SYSTEM       1           0           0                    3328                 1           NULL         NULL          NULL        NULL      NULL        2208
2          1           ROLL         1           0           0                    16384                1           NULL         NULL          NULL        NULL      NULL        2800
3          3           TEMP         2           0           0                    1280                 1           NULL         NULL          NULL        NULL      NULL        16
4          4           MAIN         1           0           0                    16384                1           NULL         NULL          NULL        NULL      NULL        16

该结果展示了每个表空间的详细信息,包括表空间ID、名称、缓存情况、类型、状态、最大大小、总大小、文件数量、加密相关信息以及已使用大小等。通过这些信息,可以了解数据库的存储布局和资源分配情况。

  1. 查看用户信息:为了确认用户是否创建成功以及查看用户的详细属性,使用以下SQL语句查询用户信息:
select username,user_id,default_tablespace,profile from dba_users;

执行结果显示:

行号     USERNAME   USER_ID     DEFAULT_TABLESPACE PROFILE                             
---------- ---------- ----------- ------------------ ------------------------------------
1          SYSAUDITOR 50331650    SYSTEM             /opt/dmdbms/dmdata/DAMENG/SYSTEM.DBF
2          SYSSSO     50331651    SYSTEM             /opt/dmdbms/dmdata/DAMENG/SYSTEM.DBF
3          SYSDBA     50331649    MAIN               /opt/dmdbms/dmdata/DAMENG/MAIN.DBF
4          TEST_USER  50331748    MAIN               /opt/dmdbms/dmdata/DAMENG/MAIN.DBF
5          SYS        50331648    SYSTEM             /opt/dmdbms/dmdata/DAMENG/SYSTEM.DBF

从结果中可以看到,新创建的TEST_USER用户已经存在于系统中,并且显示了其用户ID、默认表空间和配置文件等信息。这表明用户创建操作成功,并且用户的相关属性已正确记录在系统中。
在这里插入图片描述

三、说明

DM 逻辑结构概述 -> 表空间
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

四、逻辑存储结构

在这里插入图片描述

DM 数据库为数据库中的所有对象分配逻辑空间,并存放在数据文件中。在 DM 数据库内部,所有的数据文件组合在一起被划分到一个或者多个表空间中,所有的数据库内部对象都存放在这些表空间中。同时,表空间被进一步划分为段、簇和页(也称块)。通过这种细分,可以使得 DM 数据库能够更加高效地控制磁盘空间的利用率。图 1.1 显示了这些数据结构之间的关系。

在这里插入图片描述

可以看出,在 DM8 中存储的层次结构如下:

数据库由一个或多个表空间组成;
每个表空间由一个或多个数据文件组成;
每个数据文件由一个或多个簇组成;
段是簇的上级逻辑单元,一个段可以跨多个数据文件;
簇由磁盘上连续的页组成,一个簇总是在一个数据文件中;
页是数据库中最小的分配单元,也是数据库中使用的最小的 IO 单元。

在这里插入图片描述

Oracle空间管理
在这里插入图片描述

### DM达梦数据库表空间的概念与使用 #### 一、表空间概述 DM达梦数据库中的表空间是一个逻辑存储单元,用于管理和分配磁盘上的物理文件资源。它将数据按照功能划分为不同的区域,便于维护和优化性能[^1]。 #### 二、主要表空间的功能描述 以下是DM达梦数据库中常见的五种表空间及其用途: - **SYSTEM 表空间** 存放系统的元数据信息,包括数据字典和其他全局系统数据。这是数据库的核心部分之一,任何操作都依赖于其完整性[^2]。 - **ROLL 表空间** 主要负责存储回滚记录,在事务处理机制中起到重要作用。特别是支持多版本并发控制 (MVCC),确保不同时间点的数据一致性[^4]。 - **TEMP 表空间** 提供了一个临时工作区给查询执行计划需要用到的中间结果集或者排序操作等场景下的暂存需求。 - **MAIN 表空间** 默认情况下新创建的对象如果没有特别指明所属,则会被放置在此处;它是普通用户最常使用的常规业务对象存放地[^3]。 - **HMAIN 表空间** 针对超大尺寸表格设计专用分区方案时所涉及的大规模数据集合管理领域适用此类型配置选项。 #### 三、查看现有表空间命令 可以利用如下SQL语句来获取当前实例中存在的所有可用表空间名称列表: ```sql SELECT TABLESPACE_NAME FROM DBA_TABLESPACES; ``` 此外还有其他几个重要视图可以帮助进一步探索关于各个具体类别下更详细的属性参数设置情况比如`DBA_DATA_FILES`, `V$TABLESPACE`; 及专门针对巨大型结构化资料组态状况报告工具——即所谓 Huge Table Space 的专属监控接口:`V$HUGE_TABLESPACE`[^1]. #### 四、实际应用案例分析 假设我们需要新增加一个新的自定义表空间叫做MY_NEW_TBS, 并且希望将其设定为未来新建表默认归属目标的话,那么可以通过下面这段脚本来实现这一目的: ```sql CREATE BIGFILE TABLESPACE MY_NEW_TBS DATAFILE '/path/to/newfile.dbf' SIZE 10M AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED; ALTER DATABASE DEFAULT TABLESPACE MY_NEW_TBS; ``` 这里需要注意的是路径以及初始大小可以根据实际情况调整适应环境差异性要求[^2]. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值