服务器 频道

Lock_sga = true 的问题

  【IT168 服务器学院】 由于几乎所有的操作系统都支持虚拟内存,所以即使我们使用的内存小于物理内存,也不能避免操作系统将SGA换到虚拟内存(SWAP)。所以我们可以尝试使得SGA锁定在物理内存中不被换到虚拟内存中,这样减少页面的换入和换出,从而提高性能。但在这里遗憾的是,windows是无法避免这种情况的。下面我们来参考在不同的几个系统下怎么实现lock_sga

  AIX 5L(AIX 4.3.3以上)

  logon aix as root

  cd /usr/samples/kernel

  。/vmtune (信息如下) v_pingshm已经是1

  。/vmtune -S 1

  然后oracle用户修改initSID.ora 中 lock_sga = true

  重新启动数据库

  HP UNIX

  Root身份登陆

  Create the file "/etc/privgroup":  vi /etc/privgroup

  Add line "dba MLOCK" to file

  As root, run the command "/etc/setprivgrp -f /etc/privgroup":

  $/etc/setprivgrp -f /etc/privgroup

  oracle用户修改initSID.ora中lock_sga=true

  重新启动数据库

  SOLARIS (solaris2.6以上)

  8i版本以上数据库默认使用隐藏参数 use_ism = true ,自动锁定SGA于内存中,不用设置lock_sga, 如果设置 lock_sga =true 使用非 root 用户启动数据库将返回错误。

  WINDOWS

  不能设置lock_sga=true,可以通过设置pre_page_sga=true,使得数据库启动的时候就把所有内存页装载,这样可能起到一定的作用。

0
相关文章