DM 数据库的 ini 参数对于数据库的运行至关重要,不仅关系到数据库性能,还可能会影响到数据库的正常使用,默认和数据文件存放在同一目录。
对于单实例数据库而言,需要关注的有 dm.ini、dmarch.ini、sqllog.ini 等参数配置文件。不同的集群类型,在单实例的基础上,增加了 dmmal.ini、dmwatcher.ini、dmdcr.ini 等多种配置文件。
单实例
- dm.ini 配置文件
单实例配置参数数量较多,绝大部分保持默认即可,只有极小部分需要根据系统实际情况进行配置,如下所示:
|
参数名称 |
默认值 |
参数描述及建议 |
属性 |
|
MAX_OS_MEMORY |
95 |
该值用来定义数据库主内存池的扩展上限,通常定义为 70-90 之间即可(表示主池最大占用总内存的 70 %-90 %),如果数据库服务器上还运行其他应用软件,可适当调低。 |
静态 |
|
MEMORY_POOL |
200 |
数据库的主内存池,是在服务器启动时从 OS 申请的大片内存,后续服务器运行过程中,需要内存分配的地方大部分都是从该池分配。该值用来设置服务器启动时候的主池大小,以 MB 为单位。默认为 200,高并发时应调大,避免频繁向 OS 申请内存。 |
静态 |
|
MEMORY_TARGET |
0 |
数据库主内存池在扩展到此大小以上后,空闲时间收缩会此指定大小,以 MB 为单位,通常保持默认为 0,代表不限制。 |
静态 |
|
BUFFER |
100 |
数据库中的数据缓冲区,用来保存从磁盘中读取到的数据,单位为 MB。该缓冲区根据实际用途划分成多区域:普通数据缓冲区、快速数据缓冲区、数据回收缓冲区等等。如果数据量小于内存,则设置为数据量大小;否则设置为总内存的 2/3 比较合适。 |
静态 |
|
PWD_POLICY |
2 |
用来设置新建用户的密码策略,建议生产中按照生产规范来做要求,密码定期修改,并杜绝泄漏。 |
静态 |
|
MAX_BUFFER |
100 |
数据缓冲区扩展的最大值,建议和 BUFFER 值设置的一样 |
静态 |
|
SORT_BUF_SIZE |
2 |
排序缓存区,单位 MB,有大量排序操作时建议调大点。 |
动态,会话级 |
|
BUFFER_POOLS |
4 |
BUFFER 的分区数,一般配置为质数,并发较大的系统需要配置这个参数,减少数据缓冲区并发冲突 |
静态 |
|
RECYCLE |
64 |
用于缓冲临时表空间,单位为 MB,高并发或大量使用 with、临时表、排序等应该调大点 |
静态 |
|
RECYCLE_POOLS |
19 |
RECYCLE 缓冲区分区数,一般配置为质数,并发较大的系统需要配置这个参数,减少数据缓冲区并发冲突 |
静态 |
|
DICT_BUF_SIZE |
5 |
用于缓存数据字典,单位为 MB,系统中对象个数较多时适当加大 |
静态 |
|
WORKER_THREADS |
4 |
工作线程的个数,建议设置为 CPU 核数或其两倍 |
静态 |
|
MAX_SESSIONS |
100 |
用户最大连接数,一般设置为 2000 即可满足绝大多数应用 |
静态 |
|
OLAP_FLAG |
2 |
OLTP 系统建议设置为 2,OLAP 系统建议设置为 1 |
动态,会话级 |
|
TEMP_SPACE_LIMIT |
0 |
临时表空间大小上限,单位为 MB,如果有大量排序、临时表操作时可能会占用。关系到磁盘空间占用,建议根据磁盘情况设置上限 |
动态,系统级 |
|
SVR_LOG |
0 |
是否打开 SQL 日志功能,0:表示关闭;1:表示打开;2:按文件中记录数量切换日志文件。一般生产环境建议设置为 2,搭配参数 SVR_LOG_FILE_NUM 使用 |
动态,系统级 |
|
SVR_LOG_FILE_NUM |
0 |
总共记录多少个日志文件,当日志文件达到这个设定值以后,再生成新的文件时,会删除最早的那个日志文件,建议根据磁盘情况设置,不宜过多。 |
动态,系统级 |
|
ENABLE_MONITOR |
0 |
用于打开或者关闭系统的监控功能。1:打开;0:关闭。打开后会对数据库运行情况进行记录,对性能有所损耗,生产环境建议关闭 |
动态,系统级 |
|
ARCH_INI |
0 |
数据库的归档开关,0:不启用;1:启用;生产环境务必打开,否则会影响到数据库备份。和 dmarch.ini 共同作用 |
动态,系统级 |
From:https://eco.dameng.com/docs/zh-cn/ops/check-db-para.html




