|
一、
安装前准备
1.
对系统要求:分区设置、保障安装的目录要有足够的空间如果
/usr、
/opt不单独划分区一定要保证
/ 要足够大建议
3G以上,另外
/home要单独划分区也要保障足够的空间建议在
3G以上
/temp建议分
1G,安装系统时一定要把系统开发包选上否则以后的安装过程中会带来很多意想不到的麻烦;
2.
准备下载需要的软件包和补丁包补丁包
p3006854——
9204——
LINUX.ZIP要在安装前运行;(这些包在公司
ftp server的
/unix下)
3.
交换分区大小
swap 区起码是内存大小的
2 - 3 倍
, 比如我的内存是
256 M, 而我的
swap 就给了整整
700M
:)
4.
创建用户和组:
[root@root]#groupadd oinstall
[root@root]#groupadd dba
[root@root]#useradd –g oinstall –G dba oracle
[root@root]#passwd oracle
5.
创建
oracle目录设置安装目录以及设置权限
#mkdir –p /opt/oracle/product/
9.2.0
#chown –R oracle.oinstall /opt/oracle
#mkdir /var/opt/oracle
#chown oracle.dba /var/opt/oracle
#chown 755 /var/opt/oracle
6.
设置内核参数,调节信号灯及共享内存:
[root@miniroko]#echo 250 32000 100 128 > /proc/sys/kernel/sem
[root@miniroko]# echo 536870912 > /proc/sys/kernel/shmmax
[root@miniroko]# echo 4096 > /proc/sys/kernel/shmmni
[root@miniroko]# echo 2097152 > /proc/sys/kernel/shmall
[root@miniroko]# echo 65536 > /proc/sys/fs/file-max
[root@miniroko]#echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
为了一开机系统就能自动帮你设好这些参数,也可改动
/etc/sysctl.conf 这个文件,加入以下的语句:
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
7.
设置
oracle对文件的要求:
#vi
/etc/security/limits.conf
加入以下语句:
oracle soft nofile 65536
oracle hard nofile
65536
oracle soft nproc 16384
oracle hard nproc 16384
这个需要重启后才能生效的。但是安装的时候无所谓了
;
8.
设置
oracle环境变量
#vi /home/oracle/.bash_profile
加入如下语句
# User specific environment and startup programs
unset USERNAME
# Set the LD_ASSUME_KERNEL environment variable only for Red Hat 9 and
# for Red Hat
Enterprise Linux Advanced Server 3 (RHEL AS 3) !!
# Use the "Linuxthreads with floating stacks" implementation instead of NPTL:
export LD_ASSUME_KERNEL=
2.4.1
# Oracle Environment
export ORACLE_BASE=/usr/oracle
export ORACLE_HOME=$ORACLE_BASE/product/
9.2.0
export ORACLE_SID=nfmdb
export ORACLE_TERM=Xterm
# export TNS_ADMIN= Set if sqlnet.ora, tnsnames.ora, etc. are not in $ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN;
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export JAVA_FONTS=/usr/share/fonts/zh_CN/TrueType/
DISPLAY=127.0.0.1:0.0
export DISPLAY
export LD_PRELOAD
JAVA_HOME=/usr/java/j2sdk
1.4.2_03
export JAVA_HOME
# Set shell search paths
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$JAVA_HOME/bin
二、
主要安装过程
1.
以
oracle身份登陆进入
xwindows打开一个终端窗口
2.
安装补丁
$su - root
# unzip p3006854_9204_LINUX.zip
#sh rhel_pre_install.sh
3.
检查所需的开发包
#rpm –q gcc cpp compat-libstdc++ glibc-devel glibc-headers
#rpm –q glibc-kernheaders binutils
4.
解压缩安装文件
zcat Linux9i_Disk1.cpio.gz |cpio –idmv
zcat Linux9i_Disk2.cpio.gz |cpio –idmv
zcat Linux9i_Disk3.cpio.gz |cpio –idmv
5.
退出其他用户已
oracle身份登陆启动
xwindows打开一个终端窗口进入
Oracle
解压的目录
Disk1 运行
./runInstaller开始安装
三
.可能会遇到的问题及解决方法
1.
第一个错误提示关于这个文件
ins_oemagent.mk
的,不要去管它,选择忽略,我们将在下面的步骤中修复它。
2.
第二错误提示:
Error in invoking target install of makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk
这个时候就先不要选择忽略了
解决办法:这个时候你要先打开一个终端:以
oracle
用户的身份登录进去,运行以下的命令:
[oracle@test223 oracle]$ cd $ORACLE_HOME/install
[oracle@test223 install]$ tail make.log
可以看到这个,然后在其下有错误提示:
gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/
-L/opt/ora9/product/9.2/lib/-L/opt/ora9/product/9.2/lib/stubs/ /opt/ora9/product/9.2/ctx/lib/ctxhx.o
-L/opt/ora9/product/9.2/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut
-lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9
-lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9
我们运行以下的命令来修改它:
[oracle@test223]$ cd $ORACLE_HOME/bin
[oracle@test223 bin]$ gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/
-L/opt/ora9/product/9.2/lib/ -L/opt/ora9/product/9.2/lib/stubs/
/opt/ora9/product/9.2/ctx/lib/ctxhx.o -L/opt/ora9/product/9.2/ctx/lib/
-lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx –lc
-Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9 -lcore9 -lnls9 -lcore9
-lnls9 -lxml9 -lcore9 -lunls9 -lnls9 –ldl
也就重新在这个地方编译一下上面出错的地方。然后再回到安装界面,对那个错误对话框选择忽略。继续安装就行了。
3.
第三个错误会在启动和配置助手程序的时候出错,不要管它,选择忽略就行了。
4.
然后按照安装向导一步步走下去
四、后期工作
1.
安装完后,我们将对安装过程中出现的第一个错误和第三个错误进行修补。
修改系统:以
oracle
用户的身份登入,执行以下命令:
[oracle@miniroko oracle]$ cd $ORACLE_HOME/network/lib
[oracle@miniroko lib]$ make -f ins_net_client.mk install
然后编辑这个文件:
oracle@miniroko lib]$vi $ORACLE_HOME/ctx/lib/ins_ctx.mk
找到第
13
行、第
14
行由
ctxhx: $(CTXHXOBJ)
$(LINK) $(CTXHXOBJ) $(INSO_LINK)
改为:
ctxhx: $(CTXHXOBJ)
$(LINK) -ldl $(CTXHXOBJ) $(INSO_LINK)
存盘退出,执行以下命令:
[oracle@miniroko lib]$ make -f $ORACLE_HOME/ctx/lib/ins_ctx.mk install
现在可以重新启动
agents
了。
[oracle@miniroko lib]$ /opt/ora9/product/9.2/bin/agentctl start
2.
为了方便管理,可以写一个启动脚本:
以
ROOt
身份进入,编写以下脚本:
#!/bin/bash
# (c)
denis.klaric@in2.hr
# name: /etc/rc.d/init.d/ora9
# description: starts and stops oracle 9i database, TNS listener
# http server, and fixes kernel parameters for oracle
#oracle environment
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export NLS_LANG='croatian_croatia.ee8iso8859p2'
export ORACLE_SID=tis
export DISPLAY=:0
oracle_user=oracle
# see how we're calledcase $1 instart)# fix kernel parameters
echo 250 32000 100 128 > /proc/sys/kernel/sem
echo 536870912 > /proc/sys/kernel/shmmax
echo 4096 > /proc/sys/kernel/shmmni
echo 2097152 > /proc/sys/kernel/shmall
echo 65536 > /proc/sys/kernel/fs/file-max
echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
# start listener, apache and database
su - "$oracle_user"<<EOO
lsnrctl start
apachectl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
EOO
;;stop)# stop listener, apache and database
su - "$oracle_user"<<EOO
lsnrctl stop
apachectl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
EOO
;;
*)
echo "Usage: ora9 [start|stop]"
;;
Esac
存为
ora9
后,然后用
chmod a+x ora9,
即可在以后以
root
身份运行
etc/rc.d/init.d/ora9 start |stop
来管理
oracle
的启动和停止了。如果要将这个脚本加入到系统中使其可开机运行,那么要运行以下命令:
chkconfig --level 3(
或者是
5) --add ora9
即可。
3.
如果在安装完毕后
运行
dbca
如果出现如下错误信息:
jre was not found I
/opt/oracle/product/
9.2.0/oracle.swd.jre/bin/i386/native_threads/jre
解决办法:
[oracle@web2 native_threads]$ln –s java jre将
jave做一个链接然后就好了。
|