当前位置:首页 > 内存 > 正文

linux清理shared内存

  • 内存
  • 2024-08-25 12:45:24
  • 6469

一、如何设置LINUX的共享内存您可以修改shmmax内核参数,使SGA驻留在共享内存段中。
这可以通过修改/proc/sys/kernel/shmmax参数来实现。
[root@neirongroot]#echo1073741824>/proc/sys/kernel/shmmax
[root@neirongroot]#more/proc/sys/kernel/shmmax
1073741824这里设置为1G。
如果修改了shmmax文件,系统重启后该文件将会被重置。您可以通过修改/etc/使更改永久化。
将以下行添加到文件中。=1073741824此更改将在系统重新启动后生效。
1设置SHMMAX
SHMMAX
参数定义最大值。共享内存段的大小(以字节为单位)。设置SHMMAX时,请记住SGA的大小必须适合共享内存段。SHMMAX设置不足可能会导致以下问题:
ORA-27123:unabletoattachtosharedmemorysegment
您可以通过运行以下命令来检查SHMMAX值:
#cat/proc/sys/kernel/shmmax
//>33554432
SHMMAX的默认值为32MB。我通常使用以下方法之一将SHMMAX参数设置为2GB:
通过直接更改/proc文件系统,您可以更改SHMMAX的默认设置,而无需重新启动系统。我使用的方法是在/etc/启动文件中放入以下命令:
#>echo"2147483648">/proc/sys/kernel/shmmax
也可以使用sysctl要更改SHMMAX值的命令:
#=2147483648
最后,您可以通过将此内核参数插入到/etc/启动文件中来使此更改永久生效。>/etc/
设置
现在让我们看看SHMMNI参数。该内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值为4096。该值就足够了,通常不需要更改。
您可以通过运行以下命令来检查SHMMNI的值:
#cat/proc/sys/kernel/shmmni
4096
3设置SHMALL
SHMALL让我们看看在共享内存内核参数。该参数控制系统在任一时刻可以使用的共享内存总量(以页为单位)。这意味着该参数的值将始终至少为:
ceil(SHMMAX/PAGE_SIZE)
SHMALL的默认大小为2097152,可以使用以下命令查询:
#cat/proc/sys/kernel/shmall
2097152
SHMALL的默认设置足以安装Oracle9iRAC。
注意:i386平台上的RedHatLinux的页面大小为4096字节。但是,您可以使用BigPages,它支持更大的内存页面大小配置。