环境:
IBM power系列刀片式服务器
AIX6.1
Oracle 10.2.0.1.0(安装文件 10gr2_aix5l64_database.cpio.gz)
==========================1、检查软硬件需求================================
1、Oracle 10gR2对AIX的系统版本要求:
AIX 5L version 5.2, Maintenance Level 04 or later
AIX 5L version 5.3, Maintenance Level 02 or later
# oslevel -r
5300-06
--ML为06,所以AIX符合要求
2、RAM:至少1G 内存
# lsattr -E -l sys0 -a realmem
realmem 2097152 Amount of usable physical memory in Kbytes False
-- 物理内存为2G,符合要求
3、SWAP:(该分区不是必须的,我在安装过程中没有这个分区,后来担心出问题又修改的)
1024 MB ~ 2048 MB RAM的1.5倍
2049 MB ~ 8192 MB 与RAM相等
大于8192 MB RAM的0.75倍
#lsvg rootvg
PP size: 128M
# lsps -a
Page Space Physical Volume Volume Group Size %Used Active Auto Type
paging00 hdisk1 rootvg 4096MB 1 yes yes lv
hd6 hdisk1 rootvg 512MB 7 yes yes lv
大约4G的swap空间。
# smitty chps
修改number 的值:
计算方式:(目标大小-现在ps大小)/pp的size=number
如(4096M-512M)/128M=28
4、/tmp目录:1000M
如果文件系统空间不足,可以使用smitty chfs扩充文件系统大小。
5、至少3G的磁盘空间用于安装Oracle软件。
6、Oracle的AIX安装包为1.2G,需修改AIX的limits文件,否则无法上传
#vi /etc/security/limits
default的fsize修改成-1(默认fsize = 2097151)
7、确认系统结构
# getconf HARDWARE_BITMODE
64
8、确认安装oracle所需的系统库文件是否安装
lslpp -l bos.adt.base bos.adt.lib bos.adt.libm bos.perf.perfstat bos.perf.libperfstat bos.perf.proctools bos.adt.prof bos.cifs_fs.rte
如果提示信息如下
lslpp: 0504-132 Fileset bos.adt.libm not installed.
lslpp: 0504-132 Fileset bos.adt.prof not installed.
lslpp: 0504-132 Fileset bos.cifs_fs.rte not installed.
说明缺少文件集。
如果有库文件没有安装,请使用smitty(CLI)或smit(GUI),根据向导进行安装。安装文件可以在aix系统盘上找到[第一张盘]。
smitty安装时,可以键入/启用查询,然后输入缺少的文件集名称(如bos.adt.libm)就可以自动匹配,选定后回车即可以安装该文件集。
9、对于ORACLE10.2.0.1版本的数据库需要确认系统安装如下补丁:
/usr/sbin/instfix -i -k "IY89080"
如果提示如下
There was no data for IY89080 in the fix database.
则说明没有安装补丁。
如果补丁没有安装,请根据如下向导进行下载安装,
To obtain the interim fix,
1. Navigate to http://www14.software.ibm.com/webapp/set2/sas/f/aix.efixmgmt/fixes.html
2. Select the primary ifix location
3. Select the ifix for iy89080
安装方式 emgr -e iy89080.epkg.Z
Prerequisite Number: 1
Fileset: bos.rte.aio
Minimal Level: 5.3.0.50
Maximum Level: 5.3.0.50
Actual Level: 6.1.3.0
Type: PREREQ
Requisite Met: no
打完补丁后,需要重启机器。
==========================2、安装===================================
1、解压缩gz包(可以在oracle网站上找到下载点)
gunzip 10gr2_aix5l64_database.cpio.gz
2、解压缩cpio包
cpio -idcmv < 10gr2_aix5l64_database.cpio
3、创建用户oracle,用户组oinstall和dba,修改安装目标目录/oracle的所有者
#mkgroup oinstall
#mkgroup dba
#useradd -g oinstall -G dba [-d /home/oracle] oracle
passwd oracle
提示:可以使用id命令检验主组[primary group/initial group]与副组
#id oracle
uid=209(oracle) gid=203(oinstall) groups=204(dba)
4、修改/oracle文件系统的所属用户
#chown -R oracle:oinstall /oracle
5、修改用户oracle的系统限额
vi /etc/security/limits
在末尾添加用户oracle的限额(后三行):
default:
fsize = -1
core = 2097151
cpu = -1
data = 262144
rss = 65536
stack = 65536
nofiles = 2000
root:
daemon:
bin:
sys:
adm:
uucp:
guest:
nobody:
lpd:
oracle:
data = -1
stack = -1
注释:-1为无限制使用
6、修改用户oracle的profile,添加环境变量:
#vi /home/oracle/.profile
在profile中添加如下八行:
ORACLE_BASE=/oracle/database
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0
export ORACLE_HOME
ORACLE_SID=KJPT
export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH
export PATH
7、以root执行/oracleDisk/Disk1/rootpre/rootpre.sh
8、以root用户登陆,设置DISPLAY参数并安装
export DISPLAY=服务器IP地址:0.0
如
export DISPLAY=192.168.8.28:0.0
然后运行xhost + 允许所有人访问;
9、用oracle用户登录(注意:必须用oracle重新登陆aix新的登陆会话而不可以用su命令替代,切忌,否则找不到.profile中设置的oracle参数安装在$HOME下。如果当前用户root则可以logout然后用oracle登陆。可以使用echo $ORACLE_HOME来检测环境变量)
先启动Xmanager(如果默认是文本模式可以执行/etc/rc/dt启动桌面),然后执行/oracleDisk/Disk1/runInstall,根据GUI向导进行oracle的安装
注意:安装时不要选择创建数据库而是安装完成后用dbca创建;另外数据库字符集选Simplified Chinese ZHS16GBK。安装完成后会要求以root权限执行两个脚本,务必执行。
至此,oracle的安装就完成了。
然后用dbca创建数据库、netca创建监听即可!
创建的监听时要保证制定了正确的主机名
vi $ORALCE_HOME/network/admin/listener.ora,将HOST修改成本机的机器名,如"HOST=KJPTSERVER1"。
然后修改监听(AIX+Oracle10.2.0下需要修改,oracle的bug)
在listener.ora 文件里加入(我加在了最后):(NO-RAC)
SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER =OFF
格式:
SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name>=OFF
其中,<listener_name> 是数据库的监听器的名称。如:默认情况下,监听器名为:LISTENER 。则语句就是:
SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER =OFF
如果是RAC则必须打补丁。
具体原因请看我的blog:
http://sosuny.iteye.com/blog/752781
==========================3、配置================================
(以下操作必须在oracle用户下)
1、如何使用oracle自带的dbstart命令启动服务:
vi /etc/oratab
将最后的N改为Y
然后,vi $ORACLE_HOME/bin/dbstart 修改oracle_home_listener = /oracle/database/product/10.2.0
现在,执行 $ORACLE_HOME/bin/dbstart 就可以启动oracle了(包括监听在内)
2、手工启动oracle监听:lsnrctl start
3、手工启动oracle服务1:$ORACLE_HOME/bin/dbstart
4、手工启动oracle服务2:
lsnrctl start
sqlplus /nolog
connect /as sysdba
startup
exit
exit
5、手工关闭oracle服务:
sqlplus /nolog
connect /as sysdba
shutdown immediate
exit
6、添加到/etc/inittab最下面,实现自启动。
方式a、
vi /oracle/cmd/rc.startoracle
输入如下内容
su - oracle "-c /oracle/cmd/oraclestart"
vi /etc/inittab
添加行(在最后面)
oracle:2:wait:/oracle/cmd/rc.startoracle
7、启动、关闭em(web方式,具体端口可以在\oracle\product\10.2.0\db_1\install下的portlist.ini查看)
emctl start dbconsole
emctl stop dbconsole
启动http://Oracle:1158/em,通过oracle用户登陆 ,emctl start dbconsole就可以登陆了!
方式b、
vi /etc/inittab
添加
oracle:2:wait:/oracle/cmd/oraclestart > /oracle/cmd/roaclecmd.log 2>&1
==============================4、可能的问题===============================
1、Oracle 10g for AIX 5309 rootpre执行时报以下错误:
# ./rootpre.sh
Required file ./pw-syscall32 is missing.
解决办法:
a、下载补丁号2896876,上传至服务端重新执行即可
b、以下方法没有尝试(仅作参考)
Copy the "rootpre" sub-directory to a temporary location and run rootpre.sh
If you have the Oracle10g software CDROM mounted on /cdrom, do the following:
cp -r /cdrom/rootpre /tmp/rootpre
Alternatively, if you have downloaded the Oracle10g software and unpacked it in /stage then do the following:
cp -r /stage/Disk1/rootpre /tmp/rootpre
Now execute the rootpre.sh script:
cd /tmp/rootpre
./rootpre.sh
2、插入AIX的安装光盘,使用smit中的install all available software找到所需要的filesets。
忽略system patch 检验
新开一个session,使用root登陆,执行两个脚本:
/oracle/oraInventory/orainstRoot.sh
/oracle/product/10.2.0/root.sh
===========================5、其他内容================
查看所有补丁
$ /usr/sbin/instfix –a
查看某种补丁
$ /usr/sbin/instfix -ik Maintenance_level
or
$ /usr/sbin/instfix -a -ivk APAR_number 查看某种补丁例子
/usr/sbin/instfix -ik 4330-07_AIX_ML
或者
/usr/sbin/instfix -a -ivk IY15138