前言:这篇文章主要是翻译的oracle-base的那篇安装教程,不过由于英文的行文方式翻译成中文比较别扭,他这篇文章里面也有不完美的地方,我再慢慢调整,现在这篇文章只是作为一个参考,每台机子情况不同,完全照着做基本上是装不上,贴一下本文地址,防止有人把半成品给转走哈,加上地址这样别人看了好知道成品在哪,文章写的是x86_64位的安装教程,其实也适用于32位
http://bbs.fedora-zh.org/showthread.php?4776-%E5%9C%A8fedora-12%E4%B8%8A%E9%9D%A2%E5%AE%89%E8%A3%85oracle-11-2
参考的英文教程的地址
http://www.oracle-base.com/articles/11g/OracleDB11gR2InstallationOnFedora12.php

这篇文章介绍的是如何在fedora 12 x86_64上面安装oracle 11.2.对于操作系统的要求是至少2g swap分区和禁用secure Linux,并且安装了下面这些组件:
  • Gnome Desktop Environment
  • Editors
  • Graphical Internet
  • Development Libraries
  • Development Tools
  • Server Configuration Tools
  • Administration Tools
  • Base
  • Fonts
  • Hardware Support
  • Input Methods
  • System Tools
  • X Windows System

整个安装过程总共分以下几步:
  • 下载oracle安装文件
  • 解压文件
  • 设置hosts文件
  • 修改内核参数
  • 设置
  • 安装


下载oracle安装文件

下载地址为
http://www.oracle.com/technology/software/products/database/index.html
需要注册一下(当然也可以不注册,那就是用迅雷),下载下来是两个压缩包


解压文件

解压文件命令
代码:
unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip
其实图形界面解压就可以


设置hosts文件

保证/etc/hosts文件包含下面的内容
代码:
<IP-address>  <fully-qualified-machine-name>  <machine-name>
这一步一般情况下不用做任何修改,保证文件里面包含上面的内容就可以了


修改内核参数

oracle推荐的下列参数需要设置的最小值:
代码:
fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586
这些参数的当前值可以用下面的命令查看:
代码:
/sbin/sysctl -a | grep <param-name>
一般情况下这些参数的值都不符合要求,因此需要把下列内容添加到"/etc/sysctl.conf"文件末尾
代码:
fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

# semaphores: semmsl, semmns, semopm, semmni

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=1048586
运行下面的命令来更改内核参数的值:
代码:
/sbin/sysctl -p
在"/etc/security/limits.conf"文件末尾添加下列内容:
代码:
oracle              soft    nproc   2047

oracle              hard    nproc   16384

oracle              soft    nofile  1024

oracle              hard    nofile  65536
把下面的内容添加到/etc/pam.d/login文件当中
代码:
session    required     pam_limits.so
关掉防火墙和selinux,这都是图形界面能解决的,就不多说了


设置

如果你安装fedora 12的时候选择了完全安装,那么大部分oracle依赖的软件包已经安装了,还需要安装的就只有下列这些软件包了,如果在oracle安装前的检查过程中提示还缺少包,可以yum安装,如果源里面没有,可以到rpmfind.net等网站去搜索,自己下载rpm包安装
代码:
yum install binutils

yum install libaio libaio-devel

yum install ksh

yum install sysstat

yum install unixODBC unixODBC-devel

yum install compat-libstdc++-33
默认安装的这些包没有32位的版本,oracle在安装前的检查过程中有可能会因为这个原因显示fail,直接忽略就可以了

添加新的组和用户:
代码:
groupadd oinstall

groupadd dba

groupadd oper

groupadd asmadmin



useradd -g oinstall -G dba,oper,asmadmin oracle

passwd oracle
这篇文章介绍的安装过程没打算使用ASM,所以这次安装不会用到 asmadmin 这个用户组

为oracle的安装建立一个新的目录
代码:
mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1

chown -R oracle:oinstall /u01

chmod -R 775 /u01
取得root权限,运行下面的命令
代码:
xhost +<machine-name>
一般情况下不需要运行这个命令

编辑/etc/redhat-release文件,把里面的内容替换为下面的内容
代码:
redhat release 5
用oracle用户登录,把下面的内容添加到.bash_profile的末尾:
代码:
# Oracle Settings

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR



ORACLE_HOSTNAME=localhost.localdomain; export ORACLE_HOSTNAME

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME

ORACLE_SID=DB11G; export ORACLE_SID

ORACLE_TERM=xterm; export ORACLE_TERM

ORACLE_UNQNAME=DB11G; export ORACLE_UNQNAME

PATH=/usr/sbin:$PATH; export PATH

PATH=$ORACLE_HOME/bin:$PATH; export PATH



LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH



if [ $USER = "oracle" ]; then

  if [ $SHELL = "/bin/ksh" ]; then

    ulimit -p 16384

    ulimit -n 65536

  else

    ulimit -u 16384 -n 65536

  fi

fi
这里面的ORACLE_HOSTNAME的参数的值需要根据自己的情况来设定,默认安装的fedora为localhost.localdomain


安装

用oralce用户登录,如果你使用的是仿真X的话,那么需要设置一下环境变量DISPLAY 的值
代码:
DISPLAY=<machine-name>:0.0; export DISPLAY
在终端里面进入解压出来的database文件夹,运行下面的命令开始安装过程:
代码:
./runInstaller


安装完成后需要做的操作

编辑/etc/oratab文件,设置下面一行的标志为"Y":
代码:
DB11G:/u01/app/oracle/product/11.2.0/dbhome_1:Y
最后把/etc/redhat-release文件的内容改为
代码:
Fedora release 12 (Constantine)