oracle9i for linux A3安装指南
by tangyi
警告:如果修改unix 参数文件或者oracle 参数文件,切忌备份并且确认后才能修改,否则可能发生无法挽回的错误。
准备:
1、安装vmware tools
点vmware 工具菜单下的install vmware tools
然后mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
cp VM*.gz /tmp
unzip VM*.gz
如果是.tar,需要tar xvf *.tar
cd vm*
./*.pl
2、开起telnet 服务
安装telnet –server 包,在cd3上
把CD3放入VMWARE光驱
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
rpm –ivh telnet-server*.rpm
ntsysv
将telnet前面打上星号确定
service xinetd restart
3、开起xmanager服务
我们在Linux系统下,修改/etc/X11/xdm/Xaccess文件,找到下面的语句:# * #any host can get a login window 去掉最前面的#号
修改/etc/X11/gdm/gdm.conf文件,找到下面的语句:[xdmcp] 将其中的Enable=false 改为Enable=true 或 Enable=1。同时我们要确保存在下面的语句,因为177端口是我们要配置的xdmcp服务的监听端口,我们在后面配置xmanager将看到。
修改/etc/inittab文件,将下面的语句 改为如下,如果原来就是id:5:initdefault:就不用更改。
修改/etc/X11/xdm/xdm-config的最后一行,在displayManager.requestPort:0前面加上一个!号,结果如下第五步,我们修改确保/etc/X11/xdm/Xservers的属性为444,/etc/X11/xdm/Xsetup_0的属性为755,在RedHat 9.0中,我们可以看到这两个文件默认的属性就是444和775,因此不用修改。
正式安装
一、oracle9i 安装盘和oracle9i 补丁
ship_9204_linux_disk1.cpio p3006854_9204_LINUX.zip
ship_9204_linux_disk2.cpio p2617419_210_GENERIC.zip
ship_9204_linux_disk3.cpio p3238244_9204_LINUX.zip
二、安装步骤
1、以根用户登录系统,添加安装过程中需要用到的用户和组
#groupadd oracle
#useradd –g oracle oracle
#passwd oracle
2、以根用户登录系统,调节共享内存
# echo 300000000 > /proc/sys/kernel/shmmax
当然为了一开机系统就能自动帮你设好这些参数,也可改动 /etc/sysctl.conf 这个文件,加入以下的语句:kernel.shmmax = 300000000
注意:如果你的共享内存不够大的话,在安装的过程中会提示ORA-27123错误,到时候你只要把/proc/sys/kernel/shmmax的值调大就可以了
3:以root用户在根目录底下创建oracle 并且赋予oracle用户该目录的权限
# cd /
# mkdir -p /oracle/product/9.2
# chown -R oracle oracle
4:以oracle用户登录系统,设置oracle的环境
$vi .bash_profile (加入如下几行)
export LD_ASSUME_KERNEL=2.4.1
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/product/9.2
export ORACLE_SID=linuxgis
export PATH=$ORACLE_HOME/bin:$PATH
export PATH=$PATH:$ORACLE_HOME/bin
5、以root用户登录系统,安装p3006854_9204_LINUX.zip这个补丁,此补丁如果不装,那么runInstaller将不会启动。
$su – root
#unzip p3006854_9204_LINUX.zip
(等解压完成会在当前目录下生成一个补丁目录3006854)
#cd 3006854
#sh rhel_pre_install.sh
6.检查是否安装以下包
#su - root
#rpm -qa|grep compat
compat-db-4.0.14-5.i386
compat-gcc-7.3-2.96.122.i386
compat-gcc-c++-7.3-2.96.122.i386
compat-libstdc++-7.3-2.96.122.i386
compat-libstdc++-devel-7.3-2.96.122.i386
#rpm -qa|grep openmotif21
openmotif21-2.1.30-8.i386
#rpm -qa|grep
setarch setarch-1.3-1.i386
#rpm -qa|grep
tcl tcl-8.3.5-92.i386
备注:如果蓝色字体的包安装不成功,需要到redhat下的添加包,将所有开发包全部安装后在安装蓝色的包,一般在cd3上
上面显示的内容是在笔者已经安装了具体的RPM包之后的结果。它们对应的软件包是
compat-db-4.0.14-5.i386.rpm
compat-gcc-7.3-2.96.122.i386.rpm
compat-gcc-c++-7.3-2.96.122.i386.rpm
compat-libstdc++-7.3-2.96.122.i386.rpm
compat-libstdc++-devel-7.3-2.96.122.i386.rpm
openmotif21-2.1.30-8.i386.rpm
setarch-1.3-1.i386.rpm t
tcl-8.3.5-92.i386.rpm
安装方法,将CD3放入VMWARE光驱
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
cd /RedHat/RPM
rpm -ivh 包名
一般情况下,你的系统上的输出结果和这个不同。如果个别包没有安装,把系统安装光盘mount上,找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应的包: # rpm -ivh compat.....rpm 因为我没有把RHAS3刻录到光盘,所以我用下面的命令来挂载iso文件
mount -o loop /mnt/e/rhas3/rhel-3-i386-as-disc3.iso /mnt/cdrom
要额外注意的是,这些软件包之间是有依赖性的,先后的顺序要找好。否则会报告不能安装的错误。在安装软件包的时候,如果出现软件包的依赖性,就先安装有有依赖的包。我相信大家会看明白软件包之间的依赖性的。还需要将gcc、g++更换为2.96的版本. 方法如下:
#su - root
mv /usr/bin/gcc /usr/bin/gcc323
ln -s /usr/bin/gcc296 /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++323
# if g++ doesn't exist, then gcc-c++ was not installed(这里是注释哦)
ln -s /usr/bin/g++296 /usr/bin/g++
7、开始安装
Oracle 安装
安装oracle必须得在图形界面进行安装,而且必须是以oracle用户
cpio -idmv <ship_9204_linux_disk1.cpio
cpio -idmv <ship_9204_linux_disk2.cpio
cpio -idmv <ship_9204_linux_disk3.cpio
这样的命令来生成三个目录
进入Disk1目录,
$cd Disk1
$./runInstaller
如果显示cannot connect to X11 window的话,必须切换到root用户,键入
[oracle] su – (切换到root用户)
[root] xhost +
显示 access control disabled,clients can connect from any host表示显示正确
然后再切换到oracle用户, 进入Disk1目录
[Disk1]./runInstaller
[Disk1]./runInstaller
此时打开oracle的欢迎界面将出现乱码,解决方法如下:
(1)、结束安装过程
(2)、改变局部变量,以oracle用户键入如下:
[oracle]export LC_ALL=en
[oracle]export LANG=en
[oracle]export LANGUAGE=en
[oracle]export (此时查看LC_ALL,LANG,LANGAGE都变为en值)
如想改变整个的全局变量时,以oracle用户键入:
[oracle] vi /etc/profile
在编辑界面写入:
export LC_ALL=en
export LANG=en
export LANGUAGE=en
:wq后保存退出
[oracle]export (此时查看LC_ALL,LANG,LANGAGE都变为en值)
安装过程中的注意事项:
系统会提示你输入UNIX GROUP NAME ,即我们刚才建立的oracle用户组。(#groupadd oracle)
提示运行orainstRoot.sh脚本,在root终端下执行: #sh /tmp/orainstRoot.sh 然后继续
提示支行root.sh脚本,在root终端下执行:#sh /home/oracle/product/9.2/root.sh 然后继续
安装过程中会提示Agent Configuration Assistant 工具未链接成功,等软件安装完以后要再安装p2617419_210_GENERIC.zip和p3238244_9204_LINUX.zip这两个补丁
8、安装p2617419_210_GENERIC.zip和p3238244_9204_LINUX.zip这两个补丁
其中,p2617419_210_GENERIC.zip相当于一个补丁管理工具,只有先安装这个工具才能安装其它的补丁。
$unzip p2617419_210_GENERIC.zip (等解压完成会在当前目录下生成一个补丁目录OPatch)
$unzip p3238244_9204_LINUX.zip (等解压完成会在当前目录下生成一个补丁目录3238244)
$cd ~ (回到oracle 用户的主目录)
$vi .bash_profile (在此用户的配置文件的最后一行加上下面这一句)
export PATH=$PATH:/setup/OPatch:/sbin 即把p2617419_210_GENERIC.zip补丁解压出来的OPatch目录的路径和/sbin路径都加上去。
$cd opatch (回到补丁目录3238244下面)
$./opatch apply
8、重新链接Agent Configuration Assistant 工具,并启动它
$cd $ORACLE_HOME/network/lib
$make -f ins_oemagent.mk install
$$ORACLE_HOME/bin/agentctl start
9、使用dbca创建数据库
我安装的时候报错了。
/oracle/product/9.2.0.4/bin/dbca: line 124: 2542 Killed
$JRE_DIR/bin/jre -DORACLE_HOME=$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATH oracle.sysman.assistants.dbca.Dbca $ARGUMENTS
大致是因为9204的默认1.1.8JRE有问题,需要修改,方法如下:
到 $ORACLE_BASE/jre 目录下,发现oracle 自己已经有1.3.1版的JRE
ls $ORACLE_BASE/jre
1.1.8/ 1.3.1/
只要使用1.3.1 的JRE就可以了。通过察看dbac 的script , 我的修改方法如下(使用oracle帐号):
1. rm $ORACLE_HOME/JRE (此JRE目录是1.1.8 的符号链接)
2. ln -s $ORACLE_BASE/jre/1.3.1 $ORACLE_HOME/JRE
3. cd $ORACLE_BASE/jre/1.3.1/bin
4. ln -s $ORACLE_BASE/jre/1.3.1/bin/.java_wrapper JRE
(或者: ln -s java jre)
5. cd i386/native_threads
6. ln -s java jre
这时,从commandline 启动dbca, 就可以解决上面的问题。
数据库建立成功后的截图
修改/etc/oratab文件
将orcl:/oracle/product/9.2:N
改为orcl:/oracle/product/9.2:Y
这样可以开机时自动启动数据库