oracle9i for linux安装
1.Oracle9i安装
安装在redhat advanced server 3.0上
1、安装完成RAS3.0之后,检查下列软件包是否有安装:
compat-gcc-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-glibc-7.x-2.2.4.32.5
compat-db-4.0.14-5
openmotif-2.2.2-16
setarch-1.3-1
可用命令:
rpm -qa | grep xxx
进行查询
如果上述软件包不存在则通过下列命令安装:
命令:
rpm -ivh xxx.rpm
对于compat系列包,都在CD3上,对于openmotif包,则在CD2上。
2、添加oracle安装用户组及用户帐号
groupadd dba
groupadd oinstall
useradd -g oinstall -G dba oracle
passwd oracle
3、创建oracle9iR2安装目录
mkdir /oracle
mkdir /oracle/product
mkdir /oracle/product/9.2.0
4、将安装目录授权给oracle用户及组
chown -R oracle.oinstall /oracle
chown -R oracle.oinstall /oracle/*
5、应该修改操作系统核心参数.
执行如下命令:
echo "kernel.sem=/"250 32000 100 128/"" >> /etc/sysctl.conf
echo "kernel.shmmax=2147483648" >> /etc/sysctl.conf
上述命令设定操作系统的共享内存最大数量,以512M物理内存为准,请根据相应物理内存做设定。
6、设定oracle安装用户环境参数,以oracle用户登录,修改环境配置文件:
vi $HOME/.bash_profile
添加下面内容:
#setting oracle environment
export LD_ASSUME_KERNEL=2.4.1
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export ORACLE_SID=digitell
export ORACLE_TERM=xterm
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
# Set shell search paths
export PATH=$PATH:$ORACLE_HOME/bin
注意上述的“digitell”单词,它指的是我们默认创建的数据库实例名称是“digitell”,你可根据自己的要求进行改变。
7、更换默认gcc编译器版本:
因为默认的gcc编译器版本都是3.2的,而oracle安装使用的是2.96的,所以必须更换。
执行命令进行更换:
mv /usr/bin/gcc /usr/bin/gcc323
ln -s /usr/bin/gcc296 /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++323
ln -s /usr/bin/g++296 /usr/bin/g++
8、安装补丁丁3006854:
unzip p3006854_9204_LINUX.zip
进入解压出来的目录
cd 3006854
sh rhel3_pre_install.sh
等待出来“Patch successfully applied”则表示成功;最后重新启动系统。
9、设定允许RAS3服务器连接到X-win32上,切换到root用户,执行:
#export DISPLAY=IP:0.0
#xhost IP
切换到oracle用户,使用xclock程序,看是否在pc上显示RAS3上的xwindow程序窗口。
提示:从下面开始,所有工作默认都是以当前登录的oracle用户为准,除非特别说明之外。
10、设定操作系统默认语言是英语:
unset LANG
11、将oracle安装文件解压出来:
gunzip ship_9204_linux_disk1.cpio.gz
cpio -idmv < ship_9204_linux_disk1.cpio
gunzip ship_9204_linux_disk2.cpio.gz
cpio -idmv < ship_9204_linux_disk2.cpio
gunzip ship_9204_linux_disk3.cpio.gz
cpio -idmv < ship_9204_linux_disk3.cpio
12、运行oracle安装程序:
cd Disk1
./runInstaller
13、跟着安装向导走就可以了
14、在安装过程中间,出现有关权限组设置时,都填写预先创建好的dba组
15、在语言选择上“Product Languages”千万要记得添加上“Simplified Chinese”(简体中文)
16、在安装产品上选择“Oracle 9i Database 9.2.0.1.0”,在安装类型上选择“Custom”,并只选择下列组件:
Oracle9i 9.2.0.1.0
Oracle Net Services 9.2.0.1.0
Oracle9i Development Kit 9.2.0.1.0
17、在安装过程中间,出现"Create Database"就选择NO",我们会在最后通过dbca创建数据库的。
18、在安装将完成之前,安装程序将会运行配置程序,在运行"Intelligent Agent Configure"的时候,将会出现失败的情况,这时候请继续下一步先。
19、安装补丁OPatch.tar得到opatch工具
tar -xvf OPatch.tar
export PATH=$PATH:/mnt/temp/OPatch:/sbin
20、安装补丁p3238244_9204_LINUX.zip
unzip p3238244_9204_LINUX.zip
cd 3238244
dbshut
opatch apply
当出现是否准备好Updating时,选择“Y”
21、修改dbca脚本:
vi $ORACLE_HOME/bin/dbca
从第118行开始,将第118、119、121、122、123、124共6行都用"#"符号注释掉,结果如下:
#if [ -f /etc/rac_on ]; then
#Run DBCA
$JRE_DIR/bin/jre –native –DORACLE_HOME=$OH……
#else
#Run DBCA
#$JRE_DIR/bin/jre –DORACLE_HOME=$OH……
#fi
22、 修改完成之后再运行dbca重建数据库。
运行下面命令创建一个数据库实例
dbca
23、创建完成后,配置数据库的配置init文件
cp $ORACLE_HOME/admin/digitell/pfile/initdigitell.ora.* $ORACLE_HOME/dbs/initdigitell.ora
2.设置自动启动
1、 修改Oracle系统配置文件/etc/oratab/etc/oratab 格式为: SID:ORACLE_HOME:AUTO
把AUTO域设置为Y(大写),只有这样,oracle自带的dbstart和dbshut才能够发挥作用。我的为:ora9i:/home/oracle/ora/products/9.2.0:Y
2、 编写服务脚本:
如下
#!/bin/bash
#
#################FUNCTION#############
#
# AutoStart Oracle and listener
# AutoStop Oracle and listener
#
#####################################
#
# Created by ZhouYS 2003-11-26
#
case "$1" in
start)
echo "Starting Oracle Databases ... "
echo
"-------------------------------------------------" >>
/var/log/oracle
date +" %T %a %D : Starting Oracle Databasee as part
of system up." >> /var/log/oracle
echo
"-------------------------------------------------" >>
/var/log/oracle
su - oracle -c "dbstart" >> /var/log/oracle
echo "Done."
echo "Starting Oracle Listeners ... "
echo
"-------------------------------------------------" >>
/var/log/oracle
date +" %T %a %D : Starting Oracle Listeners as part
of system up." >> /var/log/oracle
echo
"-------------------------------------------------" >>
/var/log/oracle
su - oracle -c "lsnrctl start" >> /var/log/oracle
echo "Done."
echo ""
echo
"-------------------------------------------------" >>
/var/log/oracle
date +" %T %a %D : Finished." >> /var/log/oracle
echo
"-------------------------------------------------" >>
/var/log/oracle
touch /var/lock/subsys/oracle
;;
stop)
echo "Stoping Oracle Listeners ... "
echo
"-------------------------------------------------" >>
/var/log/oracle
date +" %T %a %D : Stoping Oracle Listener as part of
system down." >> /var/log/oracle
echo
"-------------------------------------------------" >>
/var/log/oracle
su - oracle -c "lsnrctl stop" >> /var/log/oracle
echo "Done."
rm -f /var/lock/subsys/oracle
echo "Stoping Oracle Databases ... "
echo
"-------------------------------------------------" >>
/var/log/oracle
date +" %T %a %D : Stoping Oracle Databases as part of
system down." >> /var/log/oracle
echo
"-------------------------------------------------" >>
/var/log/oracle
su - oracle -c "dbshut" >>/var/log/oracle
echo "Done."
echo ""
echo
"-------------------------------------------------" >>
/var/log/oracle
date +" %T %a %D : Finished." >> /var/log/oracle
echo
"-------------------------------------------------" >>
/var/log/oracle
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: oracle {start|stop|restart}"
exit 1
esac
将脚本命名为oracle,保存在/etc/rc.d/init.d下
改变文件属性:chmod 755 oracle
3、建立服务连接:
系统启动时启动数据库,我们需要以下连结∶
--------------------------------------------------------------------------------
$ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc5.d/S99oracle
#rc4.d unused
4.要在重新启动时停止数据库,我们需要以下连结∶
$ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle #
停止
$ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle #
重新启动