数据存储- 存储文件概述

系列文章目录


前言

达梦数据库作为已商业化的国产数据库代表,在政府及事业单位应用还是比较广泛。最近学习达梦数据库的过程中对已学习的相关内容作个简单记录,方便以后查阅。本篇文章是个人在学习达梦数据库数据存储内容时作的简要总结,也希望这篇文章能够帮助有需求的人快速了解达梦数据库。


问题提出
数据库要存储的那些数据?何如存储?存储在何处?

数据库要存储的数据可以归纳为以下几类:

  • 用户数据:用户使用数据库的目的
  • 数据字典:用户数据的组织方式
  • 保证ACID及数据安全的数据
    • 重做
    • 回滚
    • 备份
  • 用于故障及错误分析的数据习
  • 服务功能配置文件

DM服务器的存储文件

1.新初始化库的文件情况

在这里插入图片描述
配置文件
配置文件是DM数据库用来设置功能选项的一些文本文件,配置文件以ini为扩展名,他们有固定的格式。以下列出一些配置文件及其功能说明:

配置文件功能说明
dm.ini服务器配置文件
dmmal.iniMAL通信系统配置文件
dmarch.ini重做日志归档配置文件
sqllog.iniSQL跟踪日志的配置文件
dm_svc.conf客户端配置文件

控制文件
控制文件是一个二进制文件,它记录了数据库必要的初始信息,其中包括:

  • 数据库名称
  • 数据库服务器模式
  • OGUID唯一标识
  • 服务器版本
  • 数据文件版本
  • 启动次数及最后一次启动时间
  • 表空间信息
  • 控制文件校验码

控制文件备份

在服务器运行期间,执行表空间的DDL等操作后,服务器内部需要同步修改控制文件内容。如果在修改过程中服务器故障,可能会导致控制文件损坏,为了避免出现这种情况,在修改控制文件时系统内部会执行备份操作。

控制文件转化
可通过dmctlcvt来进行ctl文件和文本文件之间的转化

2.数据文件

存储数据的二进制文件,以dbf作为扩展名,在逻辑上有与之对应的表空间。大致分类如下:

行存储数据文件:

  • 对应系统自带的系统表空间SYSTEM、默认用户表空间MAIN以及用户自定义的行存数据表空间
  • 可用来存储以行存储方式组织的B树、堆表以及位图索引的数据
  • 逻辑上采用段、簇、页分层的方式进行管理

列存储数据文件:

  • 对应系统自创的列存目录HMAIN以及用户自定义表空间列存目录
  • 存储列存数据
  • 逻辑上采用数据分片的方式进行管理

回滚数据文件:

  • 对应系统自创的回滚表空间ROLL
  • 保存系统的回滚记录

临时数据文件:

  • 对应系统自创的临时数据表空间TEMP
  • 用于存储临时表数据以及缓存不足时转存到磁盘的临时数据

3.重做日志文件

  • 在DM数据库中添加、删除、修改对象,或者改变数据,DM都会按照特定的格式,将这些操作执行的结果写入到当前的重做日志文件中。

  • 重做日志文件是以log为扩展名的二进制文件。

注意:不是所有的以log为扩展名的都是重做日志文件

  • 每个DM数据库实例必须至少有2个重做日志文件 , 默认两个日 文件为DAMENG01.log、DAMENG02.log,这两个文件循环使用。
  • 因为是数据库正在使用的日志文件,因此被称为联机日志文件。
  • 存储数据库的事务日志,以便系统在出现故障时能够进行故障恢复。
    日志归档

配置了归档的运行模式下,会对重做日志文件进行归档;
归档日志文件以归档时间命名,扩展名也是 log。
归档模式下运行会更安全,当出现故障时其丢失数据的可能性更小。
重做日志归档是一些数据库高级功能,比如数据守护等的基础。

4.事件日志文件及跟踪日志文件

记录服务器运行期间信息的文本文件,用于分析定位系统错误。常用的有:

服务器事件日志

  • DM数据库系统在运行过程中,会在log子目录下产生一个“dm_实例名_日期”命名的事件日志文件。
  • 事件日志文件对运行时的关键事件进行记录,如系统启动、关闭、内存申请失败、IO错误等错误。
  • 事件日志文件随着DM数据库服务的运行一直存在。

SQL跟踪日志

  • 配置中打开了SQL跟踪之后会生成的日志
  • 记录运行期间服务器锁运行的SQL语句及其运行结果
  • 可在sqllog.ini中对所跟踪的内容进行定制

总结

DM 武汉达梦数据库股份有限公司
24小时免费服务热线:400 991 6599
达梦技术社区:https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值