新闻详情

新闻详情

首页 / 资讯中心 / 详情

dm.ini重要参数解析--达梦数据库

发布时间:2026/8/5 10:56:14
dm.ini重要参数解析--达梦数据库
dm.ini文件可以看作达梦数据库的“个性化配置菜单”它决定了数据库启动后如何运行、如何使用服务器资源是达梦数据库最核心的配置文件数据库启动时第一个读取的就是它。配置类别控制什么内存配置数据缓存多大、日志缓存多大、排序用多少内存线程配置工作线程数、IO 线程数、任务线程数连接配置最大连接数、监听端口、IP 白名单 / 黑名单安全配置密码策略、SSL 加密、审计开关性能优化执行计划缓存、优化器模式、MVCC 重试次数功能开关归档、数据守护、定时器、外部函数路径配置数据文件路径、备份路径、日志路径默认和数据文件放在一起/dmdata/DAMENG/dm.ini # Linux C:\dmdata\DAMENG\dm.ini # Windows修改 dm.ini 后大部分参数需要重启数据库才能生效静态参数和手动参数只有少部分可以运行时动态调整动态参数。初始化后“基本定型”的参数参数含义建议PAGE_SIZE数据页大小4/8/16/32K有大字段建议 16K 或 32KEXTENT_SIZE簇大小16/32/64 页大表多建议 32 页CASE_SENSITIVE标识符大小写敏感Oracle 迁移→敏感MySQL 迁移→不敏感CHARSET字符集GB18030/UTF-8/EUC-KR建议 UTF-81BLANK_PAD_MODE空格填充模式Oracle 兼容设为 1DB_NAME数据库名初始化时指定RLOG_POSTFIX_NAME日志文件扩展名默认 logTIME_ZONE时区默认 08:00数据页是数据库读写数据的最小单位 —— 就像图书馆的 一页书数据库每次从磁盘读 / 写数据至少读一页不能只读半页。数据库页大小的可选值可选值说明4 KB最小空间利用率高但 IO 次数多8 KB默认值通用场景16 KB中等适合有较大字段的系统32 KB最大适合大字段CLOB/BLOB多的系统页越大一次 IO 读的数据越多 → 读多行数据时 IO 次数少 → 更快但页越大哪怕只读 1 字节也要读一整页 → 浪费一行数据不能超过一页大小的一半因为一页至少要放两行8K 页 → 单行最大约 4K32K 页 → 单行最大约 16K有大字段长文本、图片的系统页大小必须设大页太小 → 每页都有碎片浪费页太大 → 小表占不满一页浪费空间场景建议页大小原因OLTP交易系统小数据多8K行小、读多8K 平衡性能和空间有 CLOB/BLOB 大字段16K 或 32K单行数据大小页装不下OLAP分析系统全表扫描多16K 或 32K一次读更多数据减少 IO 次数从 Oracle 迁移8KOracle 默认也是 8K保持一致减少适配成本簇Extent是数据库分配空间的最小单位一个簇 连续的 N 个数据页。可选值含义8K 页时的大小16 页默认值每次分配 16 个连续页16 × 8K 128 KB32 页每次分配 32 个连续页32 × 8K 256 KB64 页每次分配 64 个连续页64 × 8K 512 KB一簇内的页在磁盘上是连续的连续数据读取更快顺序 IO 比随机 IO 快得多簇越大连续的页越多 → 全表扫描越快簇小 → 分配精细小表不浪费空间但分配次数多簇大 → 分配粗放大表减少分配次数但小表可能浪费运行时“在线可调”的参数系统级影响所有会话UNDO_RETENTION— 回滚保留时间长查询报错时调大ARCH_INI— 归档开关生产环境务必开启SVR_LOG— SQL 日志开关排查问题时临时开启TEMP_SPACE_LIMIT— 临时表空间上限MAX_SESSION_MEMORY— 单会话内存上限ENABLE_MONITOR— 监控总开关EXCLUDED_IP— IP 黑名单会话级仅影响当前 / 新会话OLAP_FLAG— 优化器模式OLTP2 / OLAP1MONITOR_SQL_EXEC— SQL 执行监控排查性能时开启BAK_USE_AP— 备份方式选择必须“重启生效”的参数需要计划停机维护核心内存参数静态重启生效BUFFER— 数据缓冲区大小建议物理内存的 60%~80%BUFFER_POOLS— 缓冲区分区数建议设为质数如 19、37MEMORY_POOL— 共享内存池大小MAX_OS_MEMORY— OS 内存使用上限百分比RECYCLE— 回收缓冲区大小DICT_BUF_SIZE— 字典缓冲区大小核心线程 / IO 参数静态重启生效WORKER_THREADS— 工作线程数建议 CPU 核数 × 2IO_THR_GROUPS— IO 线程组数高 IO 系统必调TASK_THREADS— 任务线程数其他重要静态参数MAX_SESSIONS— 最大连接数USE_PLN_POOL— 执行计划重用生产务必开启COMPATIBLE_MODE— 兼容模式Oracle/MySQL 等RLOG_POOL_SIZE— 日志缓冲区大小MAL_INI— 集群通信开关REDOS_PARALLEL_NUM— 备库并行重演线程数需要关注的重要调优参数排名参数作用调优方向1BUFFER数据缓存物理内存 60%~80%2BUFFER_POOLS减少缓存冲突设为质数19/37/533WORKER_THREADS并发处理能力CPU 核数 × 1~24IO_THR_GROUPSIO 并发能力CPU 核数或磁盘数5USE_PLN_POOL计划重用生产必须开启16MAX_SESSIONS连接上限按业务并发量设置7OLAP_FLAG优化器倾向OLTP2, OLAP18COMPATIBLE_MODE兼容模式按迁移源设置9ARCH_INI归档日志生产必须开启10REDOS_PARALLEL_NUM备库追速备库慢时调大1.BUFFER 核心作用数据缓冲区缓存磁盘数据页提升缓存命中率减少磁盘 IOBUFFER 属于静态参数修改后必须重启实例生效。注意BUFFER 不是越大越好需要预留操作系统内存 服务器总内存扣除操作系统、应用、连接内存、MEMORY_POOL 等再分配 BUFFER 如果 BUFFER 设置过大挤占系统内存会触发操作系统 Swap 交换分区性能会暴跌得不偿失。 通用经验单机独占数据库BUFFER 分配物理内存 50%~70%服务器混部署业务需要降低比例。增大 BUFFER 同时可以关注BUFFER_POOLS合理设置缓冲分区减少并发场景下的缓存锁冲突。2.OLAP_FLAG 作用控制优化器的生成策略值 2默认 OLTP 模式优化器优先走索引扫描适合单笔交易、少量数据查询对大表全表扫描、聚合统计类 SQL 不友好。值 1OLAP 模式优化器倾向哈希连接、并行扫描、分组聚合等分析类执行计划适合大批量报表、统计查询。OLAP_FLAG 属于动态 - 会话级参数不需要重启数据库修改方式①临时会话内设置仅当前会话生效适合报表任务单独调优 ② 全局SF_SET_SYSTEM_PARA_VALUE修改系统参数新建立会话生效同时持久化写入 dm.ini。达梦社区地址https://eco.dameng.com
网站建设 高端定制 企业官网