为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM Database Server 64 V8
【操作系统】:Windows Server 2019
【CPU】:Intel(R)Xeon(R)CPU E5-2640 v3 @ 2.60GHz 2.60GHz(2 个处理器)
【内存】:16G
【问题描述】*:数据库是用来支撑企业OA系统,系统总用户量600+,活跃用户200+,并发50以内,数据库所在服务器仅安装了达梦数据库,基本没有其他软件,内存占用率基本稳定在40%左右;
数据库最近两个月老崩,重启一下就好了,发生时间一周到半个月不等,查看日志,是有个操作会导致OOM,不知道这个操作是做什么的?数据库配置和错误信息如图,是否有需要调整的地方。
数据库OOM通常是由于服务器内存增长到一定程度,由于liunx存在评分机制回关闭最大占用内存进程,因此排查的方向应当由:
1、优先排查是否有其他的进程异常扩增导致数据库最大被杀掉
2、如果无其它进程,考虑观察数据库内部内存问题,如果排查到为数据库在某一时刻内存激增,多半与慢SQL有关,大表关联中出现的不好用的索引、全表扫描都有可能导致这样的情况。
3、如果发现内存为稳定增长,直至oom,即有可能和数据库预配置的内存大小有关系,需要统一调配内存池大小,可联系项目对应工程师进行处理。
swap关了没?有DEM的话从DEM上可以看到崩溃那一刻的数据库运行情况,看是否有大SQL等
https://eco.dameng.com/community/question/1ca62f4e2d1fa1c73503d9e2114c0239
可能是存在慢sql语句,参考这个检索下是否有执行较慢的语句,优化一下