当前位置: 首页 > news >正文

达梦:内存相关参数

目录

      • 28个相关参数
      • 1. 内存池相关
        • `MEMORY_POOL`
        • `MEMORY_N_POOLS`
        • `MEMORY_BAK_POOL`
      • 2. 大缓冲区相关
        • `HUGE_BUFFER`
        • `HUGE_BUFFER_POOLS`
      • 3. 共享缓冲区相关
        • `BUFFER`
        • `BUFFER_POOLS`
        • `BUFFER_MODE`
        • `MAX_BUFFER`
      • 4. 快速池相关
        • `FAST_POOL_PAGES`
      • 5. 回收池相关
        • `RECYCLE_POOLS`
      • 6. 回滚段池相关
        • `ROLLSEG_POOLS`
      • 7. 其他池相关
        • `MAIL_VPOOL_SIZE`
        • `VM_POOL_SIZE` 和 `VM_POOL_TARGET`
        • `SESS_POOL_SIZE` 和 `SESS_POOL_TARGET`
        • `COLDATA_POOL_SIZE`
        • `CACHE_POOL_SIZE`
        • `RLOG_POOL_SIZE` 和 `LOG_POOL_SIZE`
        • `BCT_POOL_SIZE`
      • 8. 其他参数
        • `POOL_CLEAR_FLAG`
        • `MEM_POOL_EXTEND_MODE`

28个相关参数

SELECT NAME, TYPE, VALUE, DEFAULT_VALUE 
FROM v$parameter 
WHERE name LIKE '%BUFFER%' OR name LIKE '%POOL%';

在这里插入图片描述
以下是对查询结果中各个参数的详细说明,包括参数作用和推荐值:

1. 内存池相关

MEMORY_POOL
  • 参数作用:该参数定义了数据库使用的内存池的初始大小。内存池用于管理数据库运行过程中的内存分配,为各种操作提供内存资源。
  • 推荐值:一般建议设置为服务器物理内存的 10% - 30%。如果数据库的并发操作较多、数据量较大,可适当提高该值;若服务器上还有其他应用程序,需要综合考虑降低比例。例如,对于 16GB 物理内存的服务器,可设置为 2GB - 4GB 左右(2048 - 4096MB) 。
MEMORY_N_POOLS
  • 参数作用:指定内存池的数量。多个内存池可以提高内存分配的并发性能,减少内存分配的竞争。
  • 推荐值:通常设置为 1 即可满足大多数场景。如果数据库并发访问非常高,可适当增加该值,但一般不超过 CPU 核心数。
MEMORY_BAK_POOL
  • 参数作用:用于备份操作的内存池大小。备份操作需要一定的内存来缓存数据,以提高备份效率。
  • 推荐值:根据备份数据量的大小来调整。如果备份数据量较小,可设置为较小的值,如 4MB;如果备份数据量较大,可适当增大,但一般不超过服务器物理内存的 5%。

2. 大缓冲区相关

HUGE_BUFFER
  • 参数作用:设置大缓冲区的大小。大缓冲区主要用于处理大数据块的读写操作,例如大表的全量扫描、批量数据加载等。
  • 推荐值:可根据数据库中大数据操作的频率和数据量来调整。一般可以设置为 80 - 200MB 。如果数据库中经常有大数据量的操作,可适当增大该值。
HUGE_BUFFER_POOLS
  • 参数作用:指定大缓冲区池的数量。多个大缓冲区池可以提高大缓冲区分配的并发性能。
  • 推荐值:通常设置为 4 即可满足大多数场景。如果大缓冲区的并发使用非常高,可适当增加该值,但一般不超过 CPU 核心数。

3. 共享缓冲区相关

BUFFER
  • 参数作用:设置数据库的共享缓冲区大小。共享缓冲区用于缓存数据页和索引页,减少磁盘 I/O 操作,提高数据库的读写性能。
  • 推荐值:一般建议设置为服务器物理内存的 20% - 50%。如果服务器主要运行达梦数据库且 I/O 负载大,可适当提高比例;若还有其他应用程序,则需综合考虑降低比例。例如,对于 16GB 物理内存的服务器,可设置为 4GB - 8GB 左右(4096 - 8192MB) 。
BUFFER_POOLS
  • 参数作用:指定共享缓冲区池的数量。多个共享缓冲区池可以提高共享缓冲区分配的并发性能。
  • 推荐值:根据服务器的 CPU 核心数和并发访问情况来调整。一般可以设置为 CPU 核心数的一半到两倍之间。
BUFFER_MODE
  • 参数作用:设置共享缓冲区的工作模式。不同的模式会影响缓冲区的管理策略和性能。
  • 推荐值:一般使用默认值 0 即可。如果对数据库性能有特殊要求,可以参考达梦数据库官方文档进行调整。
MAX_BUFFER
  • 参数作用:设置共享缓冲区的最大可使用大小。当数据库对缓冲区的需求增加时,在不超过 MAX_BUFFER 的限制下,BUFFER 可以动态增长。
  • 推荐值:通常设置为略大于 BUFFER 的值,例如 BUFFER 设置为 4GB,MAX_BUFFER 可以设置为 4.5GB - 5GB 左右。

4. 快速池相关

FAST_POOL_PAGES
  • 参数作用:设置快速池的页面数量。快速池用于快速分配和释放小内存块,提高内存分配的效率。
  • 推荐值:一般使用默认值 3000 即可。如果数据库中频繁进行小内存块的分配和释放操作,可以适当增加该值。

5. 回收池相关

RECYCLE_POOLS
  • 参数作用:指定回收池的数量。回收池用于管理不再使用的内存块,以便重新分配给其他操作。
  • 推荐值:通常设置为 19 即可满足大多数场景。如果数据库的内存回收操作比较频繁,可以适当增加该值。

6. 回滚段池相关

ROLLSEG_POOLS
  • 参数作用:指定回滚段池的数量。回滚段用于记录事务的回滚信息,保证事务的原子性和一致性。
  • 推荐值:一般设置为 1 即可。如果数据库的并发事务非常多,可以适当增加该值。

7. 其他池相关

MAIL_VPOOL_SIZE
  • 参数作用:设置邮件虚拟池的大小。该参数可能与数据库的邮件通知功能相关,用于缓存邮件相关的数据。
  • 推荐值:一般使用默认值 128MB 即可。如果邮件通知比较频繁,可以适当增加该值。
VM_POOL_SIZEVM_POOL_TARGET
  • 参数作用VM_POOL_SIZE 设置虚拟内存池的初始大小,VM_POOL_TARGET 设置虚拟内存池的目标大小。虚拟内存池用于管理数据库的虚拟内存分配。
  • 推荐值VM_POOL_SIZE 可以设置为服务器物理内存的 5% - 10%,VM_POOL_TARGET 可以设置为略大于 VM_POOL_SIZE 的值。
SESS_POOL_SIZESESS_POOL_TARGET
  • 参数作用SESS_POOL_SIZE 设置会话池的初始大小,SESS_POOL_TARGET 设置会话池的目标大小。会话池用于管理数据库的会话连接,提高会话的创建和销毁效率。
  • 推荐值SESS_POOL_SIZE 可以根据数据库的并发会话数量来设置,一般可以设置为最大并发会话数的 10% - 20%;SESS_POOL_TARGET 可以设置为略大于 SESS_POOL_SIZE 的值。
COLDATA_POOL_SIZE
  • 参数作用:设置冷数据池的大小。冷数据池用于缓存不经常访问的数据,以减少内存的占用。
  • 推荐值:如果数据库中有大量不经常访问的数据,可以适当增大该值;如果数据访问比较均匀,可以设置为 0 。
CACHE_POOL_SIZE
  • 参数作用:设置缓存池的大小。缓存池用于缓存经常访问的数据和对象,提高数据的访问速度。
  • 推荐值:一般建议设置为服务器物理内存的 5% - 15%。
RLOG_POOL_SIZELOG_POOL_SIZE
  • 参数作用RLOG_POOL_SIZE 设置重做日志池的大小,LOG_POOL_SIZE 设置日志池的大小。日志池用于缓存数据库的日志信息,减少日志写入磁盘的次数,提高日志写入性能。
  • 推荐值:通常可设置为服务器物理内存的 1% - 5%。
BCT_POOL_SIZE
  • 参数作用:设置 BCT(块变更跟踪)池的大小。BCT 用于跟踪数据块的变更信息,提高备份和恢复的效率。
  • 推荐值:一般使用默认值 256MB 即可。如果数据库的数据变更比较频繁,可以适当增加该值。

8. 其他参数

POOL_CLEAR_FLAG
  • 参数作用:设置内存池的清理标志。该参数控制内存池在何时进行清理操作,以释放不再使用的内存。
  • 推荐值:一般使用默认值 0 即可。如果需要定期清理内存池,可以根据实际情况进行调整。
MEM_POOL_EXTEND_MODE
  • 参数作用:设置内存池的扩展模式。不同的扩展模式会影响内存池在需要扩展时的行为。
  • 推荐值:一般使用默认值 7 即可。如果对内存池的扩展性能有特殊要求,可以参考达梦数据库官方文档进行调整。

需要注意的是,以上推荐值仅为参考,实际设置时需要根据数据库的具体情况、服务器的硬件配置和业务需求进行综合考虑和调整。在调整参数后,建议进行性能测试,观察数据库的性能变化,以确保参数设置的合理性。


http://www.mrgr.cn/news/92629.html

相关文章:

  • vue3中将table表格导出excel的方法
  • 微服务2025/2/15
  • 【Maui】系统找不到指定的文件Xamarin.Android.Aapt2.targets
  • 蓝桥杯备赛-拔河
  • Flutter - 布局Widget
  • 矩阵 trick 系列 题解
  • Professional Pycharm教程
  • 【多模态大模型】GLM-4-Voice端到端语音交互机器人VoiceAI
  • 腿足机器人之十三-强化学习PPO算法
  • 每日学习Java之一万个为什么?[MySQL面试篇]
  • ubuntu22.04安装docker engine
  • 【AIGC系列】3:Stable Diffusion模型原理介绍
  • 记一次高并发下导致的数据库死锁解决方案
  • AWS ALB 实现灰度验证指南:灵活流量分配与渐进式发布
  • 使用schemdraw-markdown库绘制电路图
  • linux中安装部署Jenkins,成功构建springboot项目详细教程
  • 【Stable Diffusion】AnimatedDiff--AI动画 插件使用技巧分享;文生视频、图生视频、AI生成视频工具;
  • 【uniapp】在UniApp中实现持久化存储:安卓--生成写入数据为jsontxt
  • or-tools编译命令自用备注
  • postgresql postgis扩展相关