Oracle: setprivgrp 解决7.3.3 版内存锁定权限错误
问题描述
新版的 Oracle, 7.3.3出现下面的错误:
Process pid num=1 does not have mem locking privileges
required for using large text pages in this version.
See setprivgrp command.
我运行了 adb,并安装了Oracle补丁程序,但问题仍然存在。
为什么会出现这个问题?
配置信息
操作系统 - HP-UX
版本 - 10.20
硬件系统 - HP9000
系列 - K260
解决方法
基本上Oracle 7.3.3 可执行文件运行了 chatr,缺省情况下它试图使用“大文本页”:超级页面,超级页面将文本映像锁定到RAM 中。试图MLOCK的组没有用setprivgrp命令授予适当的权限。
如果看一下调用,它们似乎指向对oracle用户的默认组执行setprivgrp命令。Oracle 建议名字叫'dba' 的组。遗憾的是,对dba执行setprivgrp可能解决不了问题。查看正在运行该程序的用户,对该用户的组运行setprivgrp。
在这个例子中,设置继承组的setprivgrp解决了问题。
运行setprivgrp后,如果使用的是HFS文件系统,则不应当再出现任何问题;如果使用JFS,就会出现死锁。下面的补丁程序可以解决死锁的问题:
S800 PHKL_12946
S700 PHKL_12945
注:补丁程序可以被后来的版本替代;因此确保加载最新的版本。
.........following with all English text ....
Oracle: Version 7.3.3 mem locking privileges error fixed by setprivgrp
Problem Description
The new version of Oracle, 7.3.3, gives this error:
Process pid num=1 does not have mem locking privileges required for using large text pages in this version.
See setprivgrp command.
I have run adb and installed the Oracle patches, but the
problem persists.
What is the cause of this problem?
Configuration Info
Operating System - HP-UX
Version - 10.20
Hardware System - HP9000
Series - K260
Solution
Basically, the Oracle 7.3.3 executable has had chatr run against it, and by default it attemps to use a 'large text page': superpage,which requires locking the text image into RAM. The group that is attempting the MLOCK has not been granted the proper privleges with the setprivgrp command.
If you look at calls, they seem to point to executing the setprivgrp command against the default group for the oracle user. Oracle recommends a group named 'dba'. Unfortunately, executing setprivgrp against dba may not clear up the problem. Look at the user who is running the program,
and run setprivgrp against the user's group.
In this case, setting setprivgrp for process group resolved the problem.
After running setprivgrp, if you are running with an HFS filesystem, you should not have any more problems. If you are running with JFS, you
will run into a deadlock. The deadlock is fixed by these patches:
S800 PHKL_12946
S700 PHKL_12945
Note: Patches can be superseded by subsequent versions;
be sure to load the current version.