日期:2013-09-02  浏览次数:20719 次

最近在折腾HP-UX11.11,我就把ORACLE 8I在HP-UX下的安装和配置过程写出来,希望和各位分享,如果能对各位有所帮助,刁馋就感到欣慰了。如果你有什么问题或你的经验与建议,欢迎和我联系、探讨或不探讨任何技术问题,仅仅只是交个朋友,我的MAIL: yuepengfei@mail.banner.com.cn。好了灌了不少水,让我们开始吧:)

说明:以下所有具体参数均是根据我的软件环境而言:HP-UX 11.11 + ORACLE 8.1.7 Enterprise Edition (64-bit),对于你的系统可能部分内容有所变化,关键地方我会给出参考提示。

一、确认系统环境

# id
uid=0(root) gid=3(sys) groups=0(root),1(other),2(bin),4(adm),5(daemon),6(mail),)
# pwd
/
# model
9000/800/L3000-5x
# uname -a
HP-UX HL165web B.11.11 U 9000/800 1154484685 unlimited-user license
# lanscan
Hardware Station        Crd Hdw   Net-Interface  NM  MAC       HP-DLPI DLPI
Path     Address        In# State NamePPA        ID  Type      Support Mjr#
0/0/0/0  0x00306E2C251C 0   UP    lan0 snap0     1   ETHER     Yes     119
0/12/0/0 0x00306E21E827 1   UP    lan1 snap1     2   ETHER     Yes     119
# ifconfig lan1
lan1: flags=843<UP,BROADCAST,RUNNING,MULTICAST>
        inet 10.0.0.3 netmask ffffff00 broadcast 10.0.0.255


# dmesg|grep Physical
Physical: 2097152 Kbytes, lockable: 1572408 Kbytes, available: 1811528 Kbytes    
好了以上是关于系统的基本信息,oracle的安装对系统有所要求,主要包括:
1、MEM最低128M,
2、SWAP最低400M或为MEM*2,
3、X-WINDOWS肯定是要起来的,
4、HP-UX的PATCH是肯定要打的,ORACLE的文档里(Note:43507.1)对具体要用的PATCH有个完整的LIST,共有16个之多,但我想真的没有必要去看,在装ORACLE前直接给HP-UX打上最新的PATCH包好了,一切都搞定了。最新的PATCH你可以找HP的人要,也可以到HP的网站去下,不过要有系统服务号。
5、确认入下可执行文件存在:/usr/ccs/bin目录里的make,ar,ld,nm和cc。如果你4做了,那么这些文件是没有问题的。

二、调整系统参数

用SAM调整以下HP-UX的参数,然后REBUILD KERNEL AND REBOOT。以下几个参数是ORACLE要求的:
参数名 ORA要求/我给的(说明)
SHMMAX 1 GB / 1,500,000,000
SHMMIN 1/
(这个参数是AT&T Unix 的,HP-UX里根本没有,反正我是没见过,我觉得对应的参数应该是SHMEM,这个参数的含义是Enable Sys V Shared Memory,default=1,表示Enable;我想肯定是ORACLE文档抄错,这帮家伙都是抄来抄去的,对用户也不负责,不管他好了。)
SHMMNI 100 / 200(default)
SHMSEG 10 / 120 (default)
SEMMNI 70 / 100

好了,ORACLE问当中就要求这么多参数,但是还有一个参数你要是不调会走弯路的,那就是:maxdsiz ,含义为Max Data Segment Size For 32-bit Processes (Bytes)。至于maxdsiz_64bit要不要调,随你了,因为它的DEFAULT值正好是1G。
maxdsiz 67108864 / 280000000 (建议不要低于256M)
maxdsiz_64bit 1073741824 / 1200000000 (建议不要低于1G,也就是DEFAULT值)

如果你不调MAXDSIZ,安装完成后作连接就会出现下面的错误:
Error in invoking target install of makefile
/data1/app/oracle/product/8.1.7/rdbms/lib/ins_rdbms.mk

这个错误是很严重的, ORACLE会提示你安装成功,但你什么事都干不了!当然也不必担心,更不必重装,现在亡羊补牢还来得及:

先调整MAXDSIZ,重建内核重起系统,然后以ORACLE用户登录,手工编译安装ins_rdbms.mk好了:
$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk install

OK,这个过程大约几分钟就好了,然后你的ORACLE就真的安装成功了。

三、建ORACLE组、用户、设置环境变量

#groupadd -g 200 dba
#groupadd -g 201 oinstall
#useradd -u 200 -g 201 -s /bin/ksh -m -d /data1/oracle8 oracle8
#vi /etc/group (填加oracle8到dba组,用vi纯粹是个人习惯,我觉得这样方便^_^)
#passwd oracle8
#su - oracle8
$vi .profile
设置环境变量,主要的几个如下:
#--------------BEGIN----------------------------------
# Added by gototop 2002.10.18

ORACLE_BASE=/data1/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/8.1.7
ORACLE_SID=ora8
ORACLE_TERM=vt100
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM LD_LIBRARY_PATH PATH

DISPLAY=10.16.93.79:0.0
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
NLS_LANG=american_america.zhs16cgb231280
TNS_ADMIN=$ORACLE_HOME/network/admin
ORA_DB=$