暂无图片
linux oracle11G占用内存过高,如果排查
我来答
分享
zjfgx
2024-03-08
linux oracle11G占用内存过高,如果排查

数据库服务器64G内存显示占用63G,需要如何排查分析?

SUSE Linux Enterprise Server 11 SP2
Oracle 11gR2
16core/64G/600G




我来答
添加附件
收藏
分享
问题补充
8条回答
默认
最新
Thomas

free命令的buffers和 cached部分是历史上做过大文件操作导致的,这些内存不是可以手工释放么?

暂无图片 评论
暂无图片 有用 1
打赏 0
暂无图片
zjfgx
题主
2024-03-11
cached就占用了63G内存,明天早晨上班前我清理一下试试,现在也没有性能问题,谢谢
张sir
2024-03-12
卧槽,兄弟,你这要是生产环境,敢清理cache?搞清楚原理再给别人建议吧。别害人……
zjfgx

此服务器只用作数据库服务器,没有其他用途,oracle需要如何优化?

暂无图片 评论
暂无图片 有用 1
打赏 0
lianR

首先,你需要确定内存的使用情况。你可以使用以下命令来查看内存的使用情况:

-  `free  -m`:这个命令会显示内存的总量、已用量、空闲量等信息。
-  `top`:这个命令会显示系统的实时运行情况,包括CPU使用率、内存使用率、运行进程等信息。

如果你发现Oracle数据库占用了大部分的内存,那么可能需要对Oracle进行优化。以下是一些可能的优化方法:

1.  调整SGA(系统全局区)的大小:SGA是Oracle数据库中用于存储数据和控制信息的内存区域。你可以通过调整SGA的大小来减少内存的使用。但是,你需要注意,减少SGA的大小可能会影响数据库的性能。

2.  调整PGA(程序全局区)的大小:PGA是Oracle数据库中每个服务器进程的内存区域。你可以通过调整PGA的大小来减少内存的使用。但是,你需要注意,减少PGA的大小可能会影响数据库的性能。

3.  关闭不必要的Oracle服务:如果你的服务器上运行了一些不必要的Oracle服务,那么你可以考虑关闭它们来减少内存的使用。

4.  使用Oracle的自动内存管理功能:Oracle数据库提供了一个自动内存管理功能,它可以根据系统的负载自动调整SGA和PGA的大小。你可以考虑启用这个功能来减少内存的使用。

最后,如果你无法通过优化Oracle来解决内存占用过高的问题,那么你可能需要考虑升级你的服务器硬件,比如增加内存的大小。

暂无图片 评论
暂无图片 有用 3
打赏 0
广州_老虎刘

free 命令看到的free少, 不一定是问题. 用vmstat 看看si/so , 如果这两个值大, 那就说明真的不够了.  数据库是否需要优化, 一般用AWR来分析, awr里面也能反映出os是否需要调整.

暂无图片 评论
暂无图片 有用 3
打赏 0
情线

1、首先你先确认数据库占用内存多大,通过

ps auxw|head -1;ps auxw|sort -rn -k4|head -10

命令能看出系统占用内存最高的10个进程,确认一下数据库使用内存情况

2、对比一下历史内存使用情况,看一下数据库使用的内存变化,如果数据库占用内存猛增的话,那肯定问题在数据库层面了

3、确实是数据库内存问题后可以通过收集awr报告,取值区间1-2个小时,分析查看数据库各个实例组件缓存空间占用情况

4、一般这种数据库内存问题最有可能的就是sga出现问题的几率最大了

暂无图片 评论
暂无图片 有用 1
打赏 0
zjfgx

不清楚到底oracle为什么占用95%的内存,实际分配的没有那么多啊



暂无图片 评论
暂无图片 有用 0
打赏 0
情线
2024-03-11
有没有历史的服务器内存使用数据,做一下对比,看看之前数据库使用内存情况
张sir

兄弟,参考我这篇文章:https://www.modb.pro/db/515025

暂无图片 评论
暂无图片 有用 1
打赏 0
zjfgx


暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
AWR报告分析锁表求助
回答 7
查下两个等待事件对应的SQL是啥,然后再看阻塞会话是啥,确认SQL了,让开发去改代码就行了。selectsqlid,count()fromDBAHISTACTIVESESSHISTORYwhereto
云数据库mysql和普通的安装的mysql有什么区别?
回答 1
云数据库的好处就是可以做到即买即用,跟我们日常购物一样便捷,省去的自己找安装包,找依赖包,下载安装的过程。
oracle rac执行命令 crs_stat -t -v耗时近30秒
回答 1
stracecrsstattv看下具体是卡在哪一步里面。
table delete后,如何在线释放空间?有好的方法没?oracle9i环境
回答 3
已采纳
1,新建一个表,内容跟之前的一样,然后drop掉原来的表,再把新建的表给重命名;导出导入也可以2,shrink或者truncate可以试一下,不确定能不能释放空间和降低HWM
_optimizer_mjc_enabled含义
回答 1
已采纳
DescriptionIftheoptimizerindexcachingandoptimizerindexcostadjparametersaresettonondefaultvaluestheop
Oracle9i 经常报 ORA-12170: TNS:Connect timeout occurred
回答 8
那就找继续往前找,肯定能找到有一个地方用到了dblink
一般来讲,Oracle数据库表的行数上限是多少?
回答 1
已采纳
Oracle一个表的行数理论上是无限的,不过因为存在着另外某些限制,使得它实际上无法达到“无限”。一般来讲,一个表空间最多有1022个数据文件(OracleDatabase10g及以上版本有一种新的B
Oracle PLSQL 登录提示:ORA-12154:TNS:无法处理服务名,需要怎么解决?
回答 1
看服务端lsnrctlstatus状态
oracle 时间类字段加复合索引,为什么不推荐放在前面?
回答 3
已采纳
你可以设想一下,假如你有一个大型超市的收银流水表,记录着每一个收银员在某个时间收到的每一笔钱。。如果我们在这张表的收银员的名字列和收银时间列上创建一个组合索引,当我们用收银员'张三'and收银时间be
Oracle DG GAP,在主库做增量备份修复,如果数据文件路径不一样,是不是要每个数据文件都要set newname?
回答 1
已采纳
dbfilenameconvert