在Linux下使用Oracle 8以前,应当安装Oracle 8,但Oracle公司提供的安装文档较为简单。笔者借鉴其在Unix操作系统下的安装方法,得出了在Linux上安装Oracle 8的方法,此方法并不一定是最好的,使各位读者用上Oracle 8才是本文的目的。 
  前期准备 
  假定安装环境是Red Hat Linux,请在安装前确认Linux的核心版本为2.0.36及以上。 
  1.以Root用户登录进入系统,创建用户oracle和组dba,这是Oracle默认的安装用户。创建安装用户后,用tar -xvzf 将压缩文件解压到一个指定的目录,本文假定为/oracle,因为tar进行数据归档与用户本机的用户ID、组ID不同,所以要运行chown -R oracle:dba 以更改文件属性。 
  2.由于Oracle本身对共享段的要求,用户必须重新手工生成核心,以便共享段的设定满足安装要求。为生成核心,用户应当安装Linux操作系统的源代码,编辑/usr/src/linux/include/shmparam.h,将#define SHMMAX 0x002000000一行的0x002000000(32MB)改为256MB以上,然后在/usr/src/linux下运行make dep、make clean、make bzImage生成核心,使用linuxconf命令将新核心设为启动核心。这一步一定要做,如果生成的新核心有错,可以用原来的核心启动计算机。可用ipc -ml查看共享段的设置是否满足要求。当共享段大于2GB时,查看到的值是负数。 
  3.安装相应的egc包。假定安装光盘mount在/mnt/cdrom上,用命令modprobe isofs使操作系统能处理光盘的文件系统,然后运行mount -t iso9660 /dev/cdrom /mnt/cdrom,如在安装后修改了/etc/fstab,可不进行这一步操作。进入相应的RPMS目录,安装以egc开始的包,采用的安装命令为rpm -ivh <包名>。 
  设定安装的环境变量 
  安装前,应该设定相应的环境变量。修改用户Oracle的.bash—profile文件,设定相应的环境变量。由于安装系统时需要Root用户,也要有这些环境变量,故将其放在/etc/profile内,加*号为Oracle专有的环境变量,示例如下: 
  # /etc/profile 
  # System wide environment and startup programs 
  # Functions and aliases go in /etc/bashrc 
  JAVA—HOME=/usr/local/jdk1.1.3 
  SYBASE=/opt/sybase-11.9.2 
  DSQUERY=SYBASERDBMS 
  *PATH=$PATH:$JAVA—HOME/bin:/usr/X11R6/bin:/home/oracle/product/8.0.5/bin 
  PS1=″u@h:w$″ 
  ulimit -c 1000000 
  if [ ′id -gn′ = ′id -un′ -a ′id -u′ -gt 14 ]; then umask 002 
  else umask 022 
  fi 
  USER=′id -un′ 
  LOGNAME=$USER 
  MAIL=″/var/spool/mail/$USER″ 
  CLASSPATH=/usr/local/jdk1.1.3/lib:$HOME/bin 
  HOSTNAME=′/bin/hostname′ 
  HISTSIZE=1000 
  HISTFILESIZE=1000 
  export JAVA—HOME CLASSPATH SYBASE DSQUERY 
  export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL 
  *ORACLE—HOME=/home/oracle/product/8.0.5 
  *ORACLE—BASE=/home/oracle 
  *ORACLE—OWNER=oracle 
  *ORACLE—SID=oracle8 
  *ORACLE—TERM=386 
  *LD—LIBRARY—PATH=/home/oracle/product/8.0.5/lib 
  *TMPDIR=/var/tmp 
  *export ORACLE—HOME ORACLE—BASE ORACLE—OWNER ORACLE—SID ORACLE—TERM 
  export LD—LIBRARY—PATH TMPDIR 
  for i in /etc/profile.d/.sh ; do 
   if [ -x $i ]; then . $i 
   fi 
  done 
  unset i 
  安装并启动数据库 
  1.以用户Root登录系统,然后到相应目录运行/oracle/orainst/oratab.sh可生成/etc/oratab文件。用su - oracle切换到用户Oracle,运行/oracle/orainst/orainst就可启动安装命令,安装时注意在这一步不要安装Oracle文档、JDK和智能代理,并且不要创建数据库对象。重新启动/oracle/orainst/orainst安装的RDBMS部份,一般情况下除了输入几个用户定制的口令其余按默认值就可以了。Oracle安装程序开始拷贝文件,拷贝文件过程中,当安装到数据库管理系统(RDBMS)时,用户可从另一终端登录,用ps -ef | grep oracle见到一些Oracle进程已启动。 
  2.数据库服务器安装完成后,就可以手工启动了。以用户Oracle登录,进入$ORACLE—HOME/bin,运行DBStart就可以启动数据库服务器。运行DBShut就可停止数据库服务器。 
  如果用户不太熟悉Oracle的网络部份,可将$ORACLE—HOME/network/admin/ora拷贝到/etc目录,在$ORACLE—HOME/bin下运行lsnrctl start就可以启动网络监视进程。 
  3.为了每一次启动系统时自动启动Oracle或管理员手工指定是否每一次启动时自动启动Oracle,可采用如下方法。以Root登录,进入/etc/rc.d/init.d,手工生成文件Oracle,至于文件的书写格式可参见其余相应文件,示例如下: 
  #!/bin/sh 
  # oracle   This shell script takes care of starting and stopping 
  #       oracle. 
  # chkconfig: 2345 80 30 
  # description: oracle is a RDBMS Server. 
  # processname: oracle 
  # Source function library. 
  . /etc/rc.d/init.d/functions 
  # Source networking configuration. 
  . /etc/sysconfig/network 
  # Check that networking is up. 
  [${NETWORKING}= ″no″ ] && exit 0 
  # See how we were called. 
  case ″$1″ in 
   start) 
   # Start daemons. 
   echo -n ″Starting oracle: ″ 
   su - oracle /home/oracle/product/8.0.5/bin/dbstart > /dev/null 2>&1 
    sleep 60 
   su - oracle/home/oracle/product/8.0.5/bin/lsnrctl start > /dev/null 2>&1 
   echo 
   touch /var/lock/subsys/oracle 
   ;; 
   stop) 
   # Stop daemons. 
   echo -n ″Shutting down oracle: ″ 
   su - oracle/home/oracle/product/8.0.5/bin/lsnrctl stop > /dev/null 2>&1 
   su - oracle /home/oracle/product/8.0.5/bin/dbshut > /dev/null 2>&1 
   echo 
   rm -f /var/lock/subsys/oracle 
   ;; 
   restart) 
   $0 stop 
   $0 start 
   ;; 
   status) 
   status oracle 
   ;; 
   ) 
   echo ″Usage: oracle {start|stop|restart|status}″ 
   exit 1 
  esac 
  exit 0 
  客户端配置 
  为了能使用Windows下的一些开发工具,可以按如下方法进行: 
  1.在Windows下安装Oracle客户端软件(可以采用Oracle 7.xx的Windows客户端软件),安装完成后,将Linux下的/etc/tnsnames.ora拷到Windows下的$ORACLE
etworkadmin目录下,在开始选单中运行net easy configure并指明ODBC连接的字串名和运行SQLPLUS需要的主机字串(Host String),就可以从客户端连上服务器,通过ODBC进行数据库的开发。 
  2.如果用户使用Delphi为开发工具,可在BDE设定中指明有远端Oracle服务器,设定时仅指明数据库系统的网络协议为TNS(Transparent Network Substrate,请不要使用TCP),然后进入数据库桌面,就可以访问远端Oracle数据库上的数据了。