> 技术文档 > 达梦(DM8)常用管理SQL命令(3)_dm8查看当前账号的所有库表

达梦(DM8)常用管理SQL命令(3)_dm8查看当前账号的所有库表


达梦(DM8)常用管理SQL命令(3)

1.表空间

-- 查看表空间信息SQL> SELECT * FROM v$tablespace;-- 查看数据文件SQL> SELECT * FROM v$datafile;-- 表空间使用情况SQL> SELECT df.tablespace_name \"表空间名称\", df.bytes/1024/1024 \"总大小(MB)\", (df.bytes-fs.bytes)/1024/1024 \"已用(MB)\", fs.bytes/1024/1024 \"剩余(MB)\", ROUND(100*(df.bytes-fs.bytes)/df.bytes) \"使用率(%)\"FROM (SELECT tablespace_name, SUM(bytes) bytes FROM dba_data_files GROUP BY tablespace_name) df, (SELECT tablespace_name, SUM(bytes) bytes FROM dba_free_space GROUP BY tablespace_name) fsWHERE df.tablespace_name = fs.tablespace_name;行号 表空间名称 总大小(MB) 已用(MB) 剩余(MB) 使用率(%)---------- --------------- -------------------- ---------- ---------- ------------1 test2  128  0.125 127.875 02 MAIN 128  4.75 123.25 43 ROLL 128  3.875 124.125 34 TEMP 74  0.375 73.625 15 DMHR 128  0.125 127.875 06 TEST 32  0.125 31.875 07 SYSTEM 74  24.375 49.625 338 BOOKSHOP 150  8.5 141.5 69 TEST02 32  0.125 31.875 0-- 表空间使用情况简化查询(仅显示剩余空间)SQL> SELECT tablespace_name, SUM(bytes)/1024/1024 AS \"剩余空间(MB)\"FROM dba_free_spaceGROUP BY tablespace_name; 行号 TABLESPACE_NAME 剩余空间(MB)---------- --------------- ----------------1 test2  127.8752 TEST02 31.8753 BOOKSHOP 141.54 SYSTEM 49.6255 TEST 31.8756 DMHR 127.8757 TEMP 73.6258 ROLL 124.1259 MAIN 123.25
SELECT * FROM v$datafile;行号 GROUP_ID ID PATH CLIENT_PATH CREATE_TIME STATUS$ RW_STATUS LAST_CKPT_TIME MODIFY_TIME---------- ----------- ----------- ---------------------------------- ------------ ------------------- ----------- ----------- ------------------- -------------------  MODIFY_TRX  TOTAL_SIZE  FREE_SIZE FREE_PAGE_NO PAGES_READ  PAGES_WRITE PAGE_SIZE READ_REQUEST WRITE_REQUEST  -------------------- -------------------- -------------------- -------------------- -------------------- -------------------- ----------- ------------ -------------  AUTO_EXTEND MAX_SIZE NEXT_SIZE MIRROR_PATH REAL_FREE_SIZE  ----------- ----------- ----------- ----------- --------------------1 8  0  D:\\dmdbms\\data\\DAMENG\\test2.dbf test2.dbf 2025-06-25 15:18:49 1  2  2025-07-30 17:04:39 2025-06-25 15:21:39  284344  16384 16368 16  2  0  8192 2 0  1  10240 100 NULL 16368

字段详细解释

第一行 (主体信息)
字段名 (Field Name) 值 (Value) 解释 (Explanation) GROUP_ID 8 组ID/表空间ID。此数据文件所属的表空间的内部ID。V$TABLESPACE.ID 与此值对应。 ID 0 文件ID。此数据文件在其所属表空间内的唯一标识号。 PATH D:\\dmdbms\\data\\DAMENG\\test2.dbf 服务器端路径。数据文件在数据库服务器操作系统上的完整物理路径。 CLIENT_PATH test2.dbf 客户端路径。在某些网络配置下,客户端看到的文件路径(通常与 PATH 的文件名部分相同)。 CREATE_TIME 2025-06-25 15:18:49 创建时间。此数据文件被创建的时间戳。 STATUS$ 1 状态码。表示文件的当前状态。1 通常代表 ONLINE(联机,可用)。其他可能值如 0 代表 OFFLINE(脱机)。 RW_STATUS 2 读写状态码2 通常代表 READ WRITE(可读可写)。 LAST_CKPT_TIME 2025-07-30 17:04:39 最后检查点时间。数据库上一次执行检查点操作时,将此文件中的脏数据块刷新到磁盘的时间。这个时间越新,意味着需要恢复的数据越少。 MODIFY_TIME 2025-06-25 15:21:39 修改时间。此数据文件元数据(如大小、状态)最后一次被修改的时间。
第二行 (性能与大小信息)
字段名 (Field Name) 值 (Value) 解释 (Explanation) MODIFY_TRX 284344 修改事务号。与文件元数据修改相关的内部事务标识号。 TOTAL_SIZE 16384 总大小。此数据文件的总容量,单位是 页 (Pages)FREE_SIZE 16368 空闲大小。此数据文件中当前未被使用的空间大小,单位也是 页 (Pages)FREE_PAGE_NO 16 空闲页号。文件中第一个空闲页的编号(从0开始计数)。 PAGES_READ 2 读取页数。自数据库启动以来,从该文件中读取的页面总数。 PAGES_WRITE 0 写入页数。自数据库启动以来,向该文件中写入的页面总数。 PAGE_SIZE 8192 页大小。数据库中每个数据页的大小,单位是 字节 (Bytes)。这里是 8KB。 READ_REQUEST 2 读取请求数。自数据库启动以来,对该文件发起的读取操作(I/O 请求)的总次数。 WRITE_REQUEST 0 写入请求数。自数据库启动以来,对该文件发起的写入操作(I/O 请求)的总次数。
第三行 (自动扩展信息)
字段名 (Field Name) 值 (Value) 解释 (Explanation) AUTO_EXTEND 1 是否自动扩展1 表示 开启 自动扩展。当文件空间不足时,数据库会自动按规则增加文件大小。0 表示关闭。 MAX_SIZE 10240 最大大小。此文件自动扩展时允许达到的最大大小,单位是 页 (Pages)10240 页 * 8192 字节/页 ≈ 80MB。 NEXT_SIZE 100 下一次扩展大小。每次自动扩展时增加的大小,单位是 页 (Pages)。这里每次增加 100 页 (约 800KB)。 MIRROR_PATH NULL 镜像路径。如果此文件配置了镜像(RAID 1 类似功能),这里会显示镜像文件的路径。NULL 表示 未配置镜像REAL_FREE_SIZE 16368 实际空闲大小。与 FREE_SIZE 含义基本相同,表示当前可用的空闲页数。

关键计算与分析

  1. 文件实际大小:
    • TOTAL_SIZE * PAGE_SIZE = 16384 页 * 8192 字节/页 = 134,217,728 字节128 MB
  2. 已使用空间:
    • ( TOTAL_SIZE - FREE_SIZE ) * PAGE_SIZE = (16384 - 16368) * 8192 = 16 * 8192 = 131,072 字节128 KB
    • 这意味着这个 128MB 的数据文件目前只使用了约 128KB,绝大部分空间是空闲的。
  3. 使用率:
    • (已使用页数 / 总页数) * 100% = (16 / 16384) * 100% ≈ 0.1%
  4. 自动扩展:
    • 该文件开启了自动扩展 (AUTO_EXTEND=1)。
    • 最大可扩展到 10240 页 * 8192 字节/页 ≈ 80MB
    • 每次扩展 100 页 ≈ 800KB。
  5. I/O 活动:
    • 自启动以来,有 2 次读取请求,读取了 2 个页面。
    • 没有写入请求和写入页面。这可能表示该文件最近没有被修改,或者数据库刚启动不久。

结论:这是一个名为 test2.dbf 的小型数据文件,属于表空间 8,大小约 128MB,但几乎为空(使用率约 0.1%)。它配置了自动扩展,上限约 80MB。数据库启动后只有少量读取操作,没有写入。

2.备份

-- 查看备份信息SELECT * FROM v$backupset;-- 执行数据库完全备份BACKUP DATABASE FULL BACKUPSET \'全备文件的路径\';