oracle报错,进程内存不足。查看当前内存占用12G,内存max_sga_size和sga_size均为13G.
把max_sga_size和sga_size设置为23G,然后重启oracle服务后恢复。
五天后,在再次出现这个错误,此时查看性能管理器,oracle内存占用22G。并未发现特殊数据库语句。
把max_sga_size和sga_size设置为30G,然后重启oracle服务后恢复。之后几天oracle占用内存都稳定在20G左右。
想请问下在业务逻辑上并没有感觉到数据量有激增,为何内存占用会突然变大?
或者有没有什么好方法可以分析下这段时间是什么占用了内存,监控异常数据?
请不要回答增加sga_size之类的,这些操作我也会做。主要是想分析下oracle内存增加的原因和如何判断接近饱和值防止再次发生相同的问题?