DM8 数据库配置:dm.ini、归档日志
在 DM8 的日常运维中,除了掌握 SQL 和数据库对象管理外,还需要重点理解实例参数、归档日志。实际工作中最常接触的几个配置文件是 dm.ini、dmarch.ini 。
其中:
dm.ini:数据库实例核心参数文件;
dmarch.ini:归档日志配置文件;
一、dm.ini 核心配置
dm.ini 是 DM 数据库实例最重要的配置文件之一,数据库启动时会读取其中的参数。
实例目录通常类似:
/dm8/data/DAMENG/
目录中常见:
dm.ini
dmarch.ini
具体位置取决于初始化数据库时指定的数据目录。
- 查看数据库参数
日常排查参数时,不建议第一时间直接打开 dm.ini,可以先通过动态视图查看。
SELECT * FROM V$dm_ini;
查询指定参数:
SELECT *FROM V$dm_ini where para_name=‘SVR_LOG’;
- 参数修改原则
DM 参数并不是所有参数修改后都会立即生效。
常见参数属性包括:
SYS 系统级动态参数SESSION 会话级参数
IN_FILE 需要修改配置文件,通常重启后生效READ ONLY 运行过程中不能动态修改
因此修改参数前,首先应该确认:
SELECT NAME, VALUE, TYPEFROM V$PARAMETERWHERE NAME = ‘参数名’;
对于支持动态修改的参数,可以使用系统过程:
SP_SET_PARA_VALUE(1, ‘SVR_LOG’, 1);
例如关闭 SQL 日志:
SP_SET_PARA_VALUE(1, ‘SVR_LOG’, 0);
对于静态参数,则需要修改 dm.ini,并根据参数要求重启实例。
例如:
ARCH_INI = 1SVR_LOG = 1
生产环境修改配置文件前建议先备份:
cp dm.ini dm.ini.bak_$(date +%Y%m%d_%H%M%S)
参数调整的基本原则可以概括为:
先确认当前值,再确认参数类型;先测试,再修改;能够动态生效的参数,不要为了修改参数随意重启数据库。
- 常见 dm.ini 参数
日常比较常见的参数包括:
参数 作用
INSTANCE_NAME 数据库实例名称
PORT_NUM 数据库监听端口
CTL_PATH 控制文件路径
BAK_PATH 默认备份目录
ARCH_INI 是否启用归档配置
SVR_LOG 是否启用 SQL 跟踪日志
MAX_SESSIONS 最大会话连接数相关参数
MEMORY_POOL 内存池相关参数
MEMORY_TARGET 数据库内存管理相关参数
MAL_INI 是否启用 MAL 配置,主备环境较常见
这些参数不能简单照抄其他数据库环境。
特别是内存、连接数、缓存、线程等参数,必须结合:
服务器 CPU
物理内存
业务并发量
数据库规模SQL 类型
实际性能瓶颈
进行调整。
数据库调优中最容易出现的问题之一,就是误认为“参数越大,性能越好”。实际上参数配置超过服务器承载能力后,反而可能造成内存不足、交换空间使用增加甚至实例异常。
二、配置 DM 归档日志
归档日志是 DM 数据库备份恢复、数据保护和主备环境中的重要组成部分。
数据库运行过程中会不断产生 Redo 日志。如果没有开启归档,联机日志循环使用后,旧日志会被覆盖。
开启归档后,需要保存的日志会被写入归档目录,从而形成较完整的日志链。
- 使用 SQL 开启归档
先将数据库切换到 MOUNT 状态:
ALTER DATABASE MOUNT;
开启归档:
ALTER DATABASE ARCHIVELOG;
添加本地归档配置:
ALTER DATABASE ADD ARCHIVELOG
‘DEST=/dmarch,TYPE=LOCAL,FILE_SIZE=2048,SPACE_LIMIT=102400’;
最后打开数据库:
ALTER DATABASE OPEN;
完整过程:
ALTER DATABASE MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE ADD ARCHIVELOG’DEST=/dmarch,
TYPE=LOCAL,
FILE_SIZE=2048,
SPACE_LIMIT=102400’;
ALTER DATABASE OPEN;
其中:
DEST 归档目录TYPE 归档类型FILE_SIZE 单个归档文件大小,单位通常为 MB
SPACE_LIMIT 归档空间上限,单位通常为 MB
实际大小需要根据业务日志产生量、备份周期和磁盘空间规划。
- 使用 dmarch.ini 配置归档
另一种方式是通过配置文件管理归档。
首先在 dm.ini 中开启:
ARCH_INI = 1
然后配置 dmarch.ini:
[ARCHIVE_LOCAL1]ARCH_TYPE = LOCALARCH_DEST = /dmarchARCH_FILE_SIZE = 2048ARCH_SPACE_LIMIT = 102400
配置完成后,根据当前实例状态和参数生效方式,使新的配置生效。
检查归档状态:
SELECT *
FROM V$ARCH_STATUS;
操作系统中也可以直接查看归档目录:
ls -lh /dmarch
生产环境最重要的不是“是否成功开启归档”,而是后续有没有持续监控归档空间。
建议重点关注:
归档是否正常产生
归档目录是否可写
磁盘剩余空间
归档产生速度
备份是否正常
历史归档是否有清理策略
归档目录空间不足可能直接影响数据库正常运行,因此归档空间监控是数据库日常巡检的重要内容。
社区地址:https://eco.dameng.com