注册
达梦数据库实例结构
专栏/技术分享/ 文章详情 /

达梦数据库实例结构

何处惹尘埃 2026/08/28 95 0 0
摘要

一、概述

达梦数据库实例目录包含了数据库运行所必需的所有物理文件。这些文件共同确保了数据库的高效、稳定运行。根据功能,主要分为以下几大类:

文件类别 主要作用
配置文件 设置数据库功能和性能参数
控制文件 记录数据库物理结构信息
数据文件 实际存储用户和系统数据
重做日志文件 记录所有数据变更,用于故障恢复
备份与辅助目录 存放备份、跟踪日志等辅助数据

二、配置文件

配置文件是以 .ini 为扩展名的文本文件,用于启用/禁用特定功能或优化系统性能。

2.1 dm.ini —— 数据库核心配置文件

作用:达梦数据库启动所必须的核心配置文件,用于设置数据库服务器的各种功能和性能选项,包括控制文件路径、内存参数、线程参数、检查点参数等。

参数属性

  • 动态参数:修改后即时生效
  • 静态参数:修改后需重启生效
  • 手动参数:需手动修改文件后重启生效

2.2 sqllog.ini —— SQL日志配置文件

作用:用于配置SQL日志的记录行为,主要用于慢SQL定位等分析跟踪用途。当 dm.ini 中的 SVR_LOG=1 时生效。


三、控制文件

dm.ctl —— 控制文件

作用:控制文件是一个二进制文件,记录了数据库的初始信息和物理结构,主要包括:

  • 数据库名称
  • 数据库服务器模式
  • OGUID 唯一标识
  • 数据库服务器版本
  • 数据文件版本
  • 数据库启动次数及最近启动时间
  • 所有表空间信息(名称、物理文件路径等)
  • 控制文件校验码(防止文件损坏及手工修改)

dm_service.prikey —— 服务密钥文件

作用:用于达梦数据库服务通信的身份验证,由系统自动生成,无需手动处理。


四、数据文件(.dbf

数据文件以 .dbf 为后缀,是数据库中最重要的文件类型,用于保存用户应用程序数据和系统内部数据。

4.1 SYSTEM.DBF —— 系统表空间数据文件

作用:存储数据库的元数据(数据字典) ,包括所有表、视图、存储过程、索引等对象的定义信息以及权限信息。

4.2 MAIN.DBF —— 主表空间数据文件

作用:MAIN 表空间的默认数据文件。如果在创建用户时未指定默认表空间,系统会自动指定 MAIN 表空间为用户默认表空间。MAIN 表空间为混合表空间,既可存放普通表数据,也可存放 HUGE 表数据。

4.3 ROLL.DBF —— 回滚表空间数据文件

作用:用于保存系统的回滚记录。当执行 INSERTUPDATEDELETE 等修改操作时,被修改数据的原始值(旧值)会保存在此,用于事务回滚和读一致性。

4.4 TEMP.DBF —— 临时表空间数据文件

作用:存放数据库运行过程中产生的临时数据,如排序、分组、连接等大型操作的中间结果。数据库重启后临时数据会自动清空。临时文件大小可通过 dm.ini 中的 TEMP_SIZE 参数配置。


五、重做日志文件(.log

ceshi01.log / ceshi02.log —— 重做日志文件

作用:用于记录数据库所有发生过的修改、添加、删除等信息。在数据库故障恢复时,可以从日志文件中读取原始记录进行恢复。

特点:达梦数据库在创建时会生成两个重做日志文件,这两个文件循环使用,因此被称为联机日志文件。


六、备份与辅助目录

6.1 bak/ —— 备份目录

作用:存放数据库的手动备份文件(.bak 格式)。当数据库出现故障时,备份文件可用于数据恢复。

6.2 ctl_bak/ —— 控制文件备份目录

作用:存放控制文件(dm.ctl)的自动备份。达梦数据库有自动备份控制文件的策略,当控制文件损坏时,可将最新的备份拷贝到数据目录并重命名为 dm.ctl 来恢复数据库。备份路径和数量由 dm.ini 中的 CTL_BAK_PATHCTL_BAK_NUM 参数控制。

6.3 HMAIN/ —— HUGE表数据目录

作用:存储 HUGE 表(用于大数据量分析场景)的实际数据文件。HMAIN 表空间是 HUGE 表的默认表空间,在初始化数据库时会自动创建此目录。

6.4 trace/ —— 跟踪日志目录

作用:存放系统运行时的跟踪日志文件。跟踪日志为纯文本文件,包含系统各会话执行的 SQL 语句、参数信息、错误信息等,主要用于分析错误和性能问题。


七、其他文件

dm.cdt / dmtemp.cdt —— 控制文件(备用/临时)

说明dm.cdtdmtemp.cdt 是达梦数据库的控制文件变体或临时控制文件。控制文件是二进制文件,记录数据库的物理结构信息。


八、文件清单总览

文件/目录 大小 类型 核心作用
dm.ini 85 KB 配置文件 核心配置文件,数据库启动必需
dm.ini.dmbak 85 KB 配置文件备份 dm.ini 的自动备份
sqllog.ini 1 KB 配置文件 SQL日志行为配置
dm_service.prikey 1 KB 密钥文件 服务通信身份验证
dm.cdt 5 KB 控制文件 记录数据库物理结构信息
dmtemp.cdt 3 KB 临时控制文件 临时控制信息
SYSTEM.DBF 256 MB 数据文件 存储数据字典(元数据)
MAIN.DBF 6.65 GB 数据文件 用户默认数据存储
ROLL.DBF 320 MB 数据文件 事务回滚记录
TEMP.DBF 128 MB 数据文件 临时操作数据
ceshi01.log 2 GB 重做日志 数据变更记录(循环日志)
ceshi02.log 2 GB 重做日志 数据变更记录(循环日志)
bak/ 目录 手动备份文件存放
ctl_bak/ 目录 控制文件自动备份
HMAIN/ 目录 HUGE表数据文件存放
trace/ 目录 跟踪日志存放

九、重要注意事项

  1. 不要直接操作数据文件:所有 .dbf.log 文件都是数据库运行的核心文件,严禁在操作系统层面直接删除、修改或移动,否则会导致数据库严重故障甚至崩溃。

  2. 监控磁盘空间MAIN.DBFROLL.DBF 和重做日志文件会持续增长,需密切关注磁盘剩余空间。

  3. 备份控制文件ctl_bak/ 目录中的控制文件备份至关重要,当 dm.ctl 损坏时可用于恢复。

  4. 配置文件修改生效:修改 dm.ini 后部分参数需重启数据库生效;修改 sqllog.ini 后需调用 SP_REFRESH_SVR_LOG_CONFIG() 存储过程使其生效。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服