在一HPUX11.23的操作系统上,物理内存为4G,SGA设为2G,想将所有SGA锁定在物理内存中,使页入、页出减少,所以设置如下:
alter system set lock_sga=true scope=spfile
重启数据库发现不能启动,报错。请问在UNIX下还要调哪个系统内核参数后,才能设置lock_sga=true?
或不调内核参数,怎样设置?
alter system set lock_sga=true scope=spfile
重启数据库发现不能启动,报错。请问在UNIX下还要调哪个系统内核参数后,才能设置lock_sga=true?
或不调内核参数,怎样设置?
解决方案 »
- 如何拆分字符串
- 兄弟们帮忙,dataguard的问题
- 一张表中,ID的循环查询
- 为什么v$logmnr_contents的session_info列client_info项是空的?
- 重提:imp导入时问题——不支持要求的字符集转换(从类型1到852)
- 安装oracle没有建库,connect / as sysdba 为什么连不上 谢谢帮我
- 在windows2003下装Oracle8.16有问题,请各位高手紧急救援!
- preparedStatement Interface 问题,高手请指教
- 如何在linux上安装oracle9i,很急!帮帮我这个菜鸟吧!
- oracle 创建自增字段触发器 我的:new.id,id列名是小写,改如何改
- job定时时间会自动发生变化,如何防止.谢谢!
- TEXT中只能输入全角日文
由于几乎所有的操作系统都支持虚拟内存,所以即使我们使用的内存小于物理内存,也不能避免操作系统将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,使得数据库启动的时候就把所有内存页装载,这样可能起到一定的作用。 不过你的内存才4G,就没多大的必要了.
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 重新启动数据库 bitsCN_com