FreeBSD5.2中成功安装oracle9i手记

无可否认FreeBSD是最优秀的操作系统之一,但缺少大型商业数据库的支持阻碍了FreeBSD走向高端和企业应用,Oracle作为数据库的领头雁,如果能够在FreeBSD上安家,则是我等FreeBSD FANS的一个鼓舞 。经过两天的努力并参考了一个俄文网站的关于在FreeBSD上安装ORACLE8i的介绍,成功地在FreeBSD5.2上安装的ORACLE9i 。以下是安装手记 。
一 内核配置
# Add for oracle
options NBUF=2048
options MAXDSIZ="(1024UL*1024*1024)"
options MAXSSIZ="(1024UL*1024*1024)"
options DFLDSIZ="(1024UL*1024*1024)"
#
options SYSVSHM
options SHMMAXPGS=65536
options SHMMIN=2
options SHMMNI=256
options SHMSEG=256
#
options SYSVSEM
options SEMMAP=512
options SEMMNI=512
options SEMUME=512
options SEMMNS=1024
options SEMMNU=512
options SEMMSL=256
options SEMOPM=256
#
options SYSVMSG #SYSV-stylmessage queues
options MSGMNB=8192
options MSGMNI=256
options MSGSEG=8192
options MSGSSZ=16
options MSGTQL=128
# Add end
另外将maxusers设为512,我在定制内核时选择的是ULE调度器,现在ULE已经是默认的调度器了 。
二 系统配置
1 SWAP分区大小为1G,RAM256M,ORACLE_HOME要求有5G以上空间 。
2 安装Linux仿真环境 。
必须安装linux_base-7.1和linux_devtools-7.1两个PKGS,但我在安装时发现从ports已经无法安装devtools-7.1了,所以被迫从一个安装了RH7.3的机器中根据两个ports的介绍将整个RH7.3系统CP到了FreeBSD中,如果需要我可以将这个目录?树打好一个tar包提供给和位 。无论你如何构建/compat/linux目录树,必须保证在?抡真环境中有ar,as,ld,nm,tr,cpp,chmod,g,printf,find,chgrp,chown等程序 。
3 调整Linux仿真环境
a 在/compat/linux/etc中建立mtab到/etc/fstab的链接
ln -s /etc/fstab /compat/linux/etc/mtab
b 在/compat/linux/bin中建立到awk,sed,chown的链接
ln -s /compat/linux/usr/bin/awk /compat/linux/bin/awk
ln -s /compat/linux/usr/bin/sed /compat/linux/bin/sed
ln -s /usr/sbin/chown /compat/linux/bin/chown
以上配置是为了满足ORACLE9i在安装时的一些脚本的要求,我所知道的在运行root.sh时用到以上的配置,但也可以在运行前修改这个脚本,我安装时用的是后??,不知是不是这个原因导致了后面会讲的一个错误 。
c 在/compat/linux/bin中建立arch可执行文件
内容为:
#!/compat/linux/bin/bash
echo i686 #根据你的机器是i586还是i486
打上可执行标记:
chmodx arch
4 打开linux仿真支持,修改rc.conf文件也可以kldload linux模块
enable_linux="YES"
5 mount linux proc文件系统
mkdir /compat/linux/proc
mount -t linproc /dev/device /compat/linux/proc
第二步可以放入/etc/fstab文件中在开机时自动截入
6 添加oracle用户组和用户
pw groupadd -n dba -g 94
pw groupadd -n oinstall -g 95
pw useradd -n oracle -u 94 -c "Oracle Daemon" -d /home/oracle -s
/compat/linux/bin/bash -g dba -G oinstall,wheel
7 配置oracle用户环境
mkdir /home/oracle
chown oracle:dba /home/oracle
cd /home/oracle
编辑.profile配置oracle用户环境:
PATH=/compat/linux/bin:/compat/linux/sbin:compat/linux/usr/bin:/compat/linux/usr/sbin:/home/oracle/920/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin; export PATH
ORACLE_BASE=/home/oracle; export ORACLE_BASE
#下面一个是安装oracle的目录
ORACLE_HOME=/home/oracle/920; export ORACLE_HOME
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
ORACLE_SID=ORCL; export ORACLE_SID
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
export DISPLAY=:0
三 安装准备
下载oracle9i(9.2.0) for linux的三个文件在一个足够大小(>2G)空间解压缩最后得到三个目录:Disk1,Disk2,Disk3 。
四 安装
1 以oracle用户登录
2 进入X
startx

推荐阅读