oracle数据库内存优化,解决内存与swap占用率高问题

1、查看系统内存,总内存(MemTotal)

cat /proc/meminfo | grep MemTotal

2.查看有没有使用大内存页时的情况

more /proc/meminfo |grep -i HugePage

3.查看SGA和PGA(pusl sql 中)
3.1.切换到oracle用户,以 SYSDBA 身份登录到数据库: 
su oracle  

sqlplus / as sysdba
3.2 为了优化性能,SGA容量应与实际内存相符,避免过大导致使用虚拟内存而降低性能。

sga_max_size‌ 可动态分配SGA的最大值

sga_target 当前已分配的最大SGA,用于自动SGA内存管理‌

show parameter sga;

show parameter pga;

5、配置HugePages Pool大小

vi /etc/sysctl.conf

在最后添加如下的行

vm.nr_hugepages = 2300     #(这个值应大于或等于 SGA/2m,即 4*1024m/2m)

6、配置oracle用户最大线程数、文件句柄和最大能锁定的内存

vi /etc/security/limits.conf

在最后添加如下的行

 
       oracle  soft    nproc   2047
       oracle  hard    nproc   16384
       oracle  soft    nofile  1024
       oracle  hard    nofile  65536
       oracle  soft    memlock 5194304          #(这里是以KB为单位,一般大于等于SGA)

       oracle  hard    memlock 5194304

7、使配置生效

sysctl -p  

8、重启系统及启动oracle实例

参考文章:

linux下Oracle通过设置大内存页解决使用swap分区问题_oracle占用虚拟交换分区-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值